|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2009-03-19 23:12 UTC] iliaa@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Wed Oct 29 04:00:01 2025 UTC |
Description: ------------ in platforms which strictly alignment is required, we still have some bugs.. patch: --- ext/mbstring/oniguruma/regint.h +++ ext/mbstring/oniguruma/regint.h @@ -256,7 +256,7 @@ #define NULL_UCHARP ((UChar* )0) #ifndef PLATFORM_UNALIGNED_WORD_ACCESS -#define WORD_ALIGNMENT_SIZE SIZEOF_INT +#define WORD_ALIGNMENT_SIZE SIZEOF_LONG #define GET_ALIGNMENT_PAD_SIZE(addr,pad_size) do {\ (pad_size) = WORD_ALIGNMENT_SIZE \ --- ext/sysvshm/sysvshm.c +++ ext/sysvshm/sysvshm.c @@ -375,7 +375,7 @@ static int php_put_shm_data(sysvshm_chun long total_size; long shm_varpos; - total_size = ((long) (len + sizeof(sysvshm_chunk) - 1) / 4) * 4 + 4; /* 4-byte alligment */ + total_size = ((long) (len + sizeof(sysvshm_chunk) - 1) / sizeof(long)) * sizeof(long) + sizeof(long); /* long alligment */ if ((shm_varpos = php_check_shm_data(ptr, key)) > 0) { php_remove_shm_data(ptr, shm_varpos); Reproduce code: --------------- ----- Expected result: ---------------- ------ Actual result: -------------- --------