on master help sign in
Merge pull request #1636 from alterapraxisptyltd/issue-1610

rts/idris_rts.c: Fix referenced after allocation that may moved away

commite0e2e4cfefabb9d1495e8c1d8416524bc3d6b547 authorEdwin Brady <edwin.brady@gmail.com> dateThu 16 Oct 2014, 16:35 (12 years ago) parentf5f4fbe2f9d9cb
1 file changed+2−1
rts/idris_rts.c+2−1
rts/idris_rts.c+2−1
@@ -346,10 +346,11 @@ void idris_memmove(void* dest, void* src, i_int dest_offset, i_int src_offset, i
346346}
347347
348348VAL idris_castIntStr(VM* vm, VAL i) {
349+ int x = (int) GETINT(i);
349350 Closure* cl = allocate(vm, sizeof(Closure) + sizeof(char)*16, 0);
350351 SETTY(cl, STRING);
351352 cl -> info.str = (char*)cl + sizeof(Closure);
352− sprintf(cl -> info.str, "%d", (int)(GETINT(i)));
353+ sprintf(cl -> info.str, "%d", x);
353354 return cl;
354355}
355356