Skip to content

Commit 1a3a797

Browse files
fix asan tests
1 parent b3d5b5a commit 1a3a797

File tree

2 files changed

+11
-10
lines changed

2 files changed

+11
-10
lines changed

ext/zend_test/tests/zend_mm_observer_all_01.phpt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@ ZendMM Observer: Observe all
44
zend_test
55
--INI--
66
zend_test.zend_mm_observer.enabled=1
7-
opcache.enable=0
87
--FILE--
98
<?php
9+
echo "done.";
1010
?>
1111
--EXPECTREGEX--
12-
.*
13-
ZendMM Observer enabled
14-
.*
15-
ZendMM Observer disabled
12+
.*ZendMM Observer enabled.*
13+
.*done\..*
14+
.*ZendMM Observer disabled.*

ext/zend_test/zend_mm_observer.c

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
static void zend_mm_test_observer_malloc(size_t len, void *ptr ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
2525
{
2626
size_t block_len = 0;
27-
if (is_zend_ptr(ptr)) {
27+
if (is_zend_mm() && is_zend_ptr(ptr)) {
2828
block_len = zend_mm_block_size(zend_mm_get_heap(), ptr);
2929
}
3030
printf("malloc %p of size %zu (block: %zu)\n", ptr, len, block_len);
@@ -34,7 +34,7 @@ static void zend_mm_test_observer_malloc(size_t len, void *ptr ZEND_FILE_LINE_DC
3434
static void zend_mm_test_observer_free(void *ptr ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
3535
{
3636
size_t block_len = 0;
37-
if (is_zend_ptr(ptr)) {
37+
if (is_zend_mm() && is_zend_ptr(ptr)) {
3838
block_len = zend_mm_block_size(zend_mm_get_heap(), ptr);
3939
}
4040
printf("freed %p of size %zu\n", ptr, block_len);
@@ -44,7 +44,7 @@ static void zend_mm_test_observer_free(void *ptr ZEND_FILE_LINE_DC ZEND_FILE_LIN
4444
static void zend_mm_test_observer_realloc(void *ptr, size_t len, void *newptr ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
4545
{
4646
size_t block_len = 0;
47-
if (is_zend_ptr(ptr)) {
47+
if (is_zend_mm() && is_zend_ptr(ptr)) {
4848
block_len = zend_mm_block_size(zend_mm_get_heap(), ptr);
4949
}
5050
printf("realloc %p of size %zu (block: %zu, former %p)\n", newptr, len, block_len, ptr);
@@ -88,16 +88,18 @@ void zend_test_mm_observer_minit(INIT_FUNC_ARGS)
8888
void zend_test_mm_observer_rinit(void)
8989
{
9090
if (ZT_G(zend_mm_observer_enabled)) {
91-
printf("ZendMM Observer enabled\n");
9291
ZT_G(observer) = zend_mm_observer_register(zend_mm_get_heap(), zend_mm_test_observer_malloc, zend_mm_test_observer_free, zend_mm_test_observer_realloc);
92+
printf("ZendMM Observer enabled\n");
93+
fflush(stdout);
9394
}
9495
}
9596

9697
void zend_test_mm_observer_rshutdown(void)
9798
{
9899
if (ZT_G(observer)) {
99-
printf("ZendMM Observer disabled\n");
100100
zend_mm_observer_unregister(zend_mm_get_heap(), ZT_G(observer));
101+
printf("ZendMM Observer disabled\n");
102+
fflush(stdout);
101103
}
102104
ZT_G(observer) = NULL;
103105
}

0 commit comments

Comments
 (0)