Changeset 65
- Timestamp:
- 06/06/2006 11:26:22 AM (2 years ago)
- Files:
-
- 1 modified
-
trunk/xcache.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/xcache.c
r55 r65 1722 1722 /* signal handler */ 1723 1723 static void (*original_sigsegv_handler)(int) = NULL; 1724 static void xcache_sigsegv_handler(int dummy) /* {{{ */1725 { 1726 if (original_sigsegv_handler == xcache_sigsegv_handler) {1724 static void xcache_sigsegv_handler(int sig) /* {{{ */ 1725 { 1726 if (original_sigsegv_handler != xcache_sigsegv_handler) { 1727 1727 signal(SIGSEGV, original_sigsegv_handler); 1728 1728 } … … 1733 1733 chdir(xc_coredump_dir); 1734 1734 } 1735 if (original_sigsegv_handler != xcache_sigsegv_handler) { 1736 original_sigsegv_handler(dummy); 1737 } 1735 raise(sig); 1738 1736 } 1739 1737 /* }}} */ … … 1902 1900 } 1903 1901 1904 original_sigsegv_handler = signal(SIGSEGV, xcache_sigsegv_handler); 1902 if (xc_coredump_dir && xc_coredump_dir[0]) { 1903 original_sigsegv_handler = signal(SIGSEGV, xcache_sigsegv_handler); 1904 } 1905 1905 1906 1906 xc_init_constant(module_number TSRMLS_CC); … … 1940 1940 #endif 1941 1941 1942 signal(SIGSEGV, original_sigsegv_handler); 1942 if (xc_coredump_dir && xc_coredump_dir[0]) { 1943 signal(SIGSEGV, original_sigsegv_handler); 1944 } 1943 1945 if (xc_coredump_dir) { 1944 1946 pefree(xc_coredump_dir, 1);

