Page MenuHomeFreeBSD

D45892.id140604.diff
No OneTemporary

D45892.id140604.diff

diff --git a/lib/libthr/thread/thr_rtld.c b/lib/libthr/thread/thr_rtld.c
--- a/lib/libthr/thread/thr_rtld.c
+++ b/lib/libthr/thread/thr_rtld.c
@@ -220,19 +220,19 @@
struct RtldLockInfo li;
struct pthread *curthread;
ucontext_t *uc;
- long dummy = -1;
int uc_len;
+ char dummy[2] = {};
curthread = _get_curthread();
/* force to resolve _umtx_op PLT */
- _umtx_op_err((struct umtx *)&dummy, UMTX_OP_WAKE, 1, 0, 0);
+ _umtx_op_err(&dummy, UMTX_OP_WAKE, 1, 0, 0);
/* force to resolve errno() PLT */
__error();
/* force to resolve memcpy PLT */
- memcpy(&dummy, &dummy, sizeof(dummy));
+ memcpy(&dummy[0], &dummy[1], 1);
mprotect(NULL, 0, 0);
_rtld_get_stack_prot();

File Metadata

Mime Type
text/plain
Expires
Wed, Mar 4, 8:17 PM (12 h, 57 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29246833
Default Alt Text
D45892.id140604.diff (697 B)

Event Timeline