Skip to content

Commit 538deec

Browse files
Fix allignement in mbstring functions
1 parent a91ef96 commit 538deec

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

‎ext/mbstring/libmbfl/mbfl/mbfl_encoding.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ typedef zend_string* (*mb_cut_fn)(unsigned char *str, size_t from, size_t len, u
155155
static inline void mb_convert_buf_init(mb_convert_buf *buf, size_t initsize, uint32_t repl_char, unsigned int err_mode)
156156
{
157157
buf->state = buf->errors = 0;
158-
buf->str = emalloc(_ZSTR_STRUCT_SIZE(initsize));
158+
buf->str = emalloc(ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(initsize)));
159159
buf->out = (unsigned char*)ZSTR_VAL(buf->str);
160160
buf->limit = buf->out + initsize;
161161
buf->replacement_char = repl_char;
@@ -167,7 +167,7 @@ static inline void mb_convert_buf_init(mb_convert_buf *buf, size_t initsize, uin
167167
if ((size_t)(limit - out) < (needed)) { \
168168
size_t oldsize = limit - (unsigned char*)ZSTR_VAL((buf)->str); \
169169
size_t newsize = oldsize + MAX(oldsize >> 1, needed); \
170-
zend_string *newstr = erealloc((buf)->str, _ZSTR_STRUCT_SIZE(newsize)); \
170+
zend_string *newstr = erealloc((buf)->str, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(newsize))); \
171171
out = (unsigned char*)ZSTR_VAL(newstr) + (out - (unsigned char*)ZSTR_VAL((buf)->str)); \
172172
limit = (unsigned char*)ZSTR_VAL(newstr) + newsize; \
173173
(buf)->str = newstr; \

0 commit comments

Comments
 (0)