php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login

Patch zend_bitset_in-SIGBUS-SPARC-patch for Reproducible crash Bug #74199

Patch version 2017-03-05 09:47 UTC

Return to Bug #74199 | Download this patch
Patch Revisions:

Developer: stadtkind2@gmx.de

--- php-7.1.2.orig/ext/opcache/Optimizer/zend_worklist.h	Sun Mar  5 08:35:01 2017
+++ php-7.1.2/ext/opcache/Optimizer/zend_worklist.h	Sun Mar  5 08:42:04 2017
@@ -25,13 +25,13 @@
 #include "zend_bitset.h"
 
 typedef struct _zend_worklist_stack {
-	int *buf;
+	zend_ulong *buf;
 	int len;
 	int capacity;
 } zend_worklist_stack;
 
 #define ZEND_WORKLIST_STACK_ALLOCA(s, _len, use_heap) do { \
-		(s)->buf = (int*)do_alloca(sizeof(int) * _len, use_heap); \
+		(s)->buf = (zend_ulong*)do_alloca(sizeof(zend_ulong) * _len, use_heap); \
 		(s)->len = 0; \
 		(s)->capacity = _len; \
 	} while (0)
@@ -77,7 +77,7 @@
 } zend_worklist;
 
 #define ZEND_WORKLIST_ALLOCA(w, _len, use_heap) do { \
-		(w)->stack.buf = (int*)do_alloca(sizeof(int) * _len + sizeof(zend_ulong) * zend_bitset_len(_len), use_heap); \
+		(w)->stack.buf = (zend_ulong*)do_alloca(sizeof(zend_ulong) * _len + sizeof(zend_ulong) * zend_bitset_len(_len), use_heap); \
 		(w)->stack.len = 0; \
 		(w)->stack.capacity = _len; \
 		(w)->visited = (zend_bitset)((w)->stack.buf + _len); \
 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Tue Oct 06 08:00:02 2026 UTC