[Fix] Ensure correct stack pointer initialization on !POSIX
authorTak <levi@unity3d.com>
Wed, 20 Oct 2010 09:37:40 +0000 (11:37 +0200)
committerZoltan Varga <vargaz@gmail.com>
Wed, 20 Oct 2010 13:43:30 +0000 (15:43 +0200)
* metadata/threads.c: Ensure correct stack pointer initialization on !POSIX.
This fixes some random crashes with embedded, release-optimized binaries on windows.

License: MIT/X11

mono/metadata/threads.c

index ebfdcb4d91d07d151683314e91471251be8e189c..d43c5419d71e911c7cb44550221d61206f3d81de 100644 (file)
@@ -978,7 +978,10 @@ mono_thread_get_stack_bounds (guint8 **staddr, size_t *stsize)
                g_assert ((current > *staddr) && (current < *staddr + *stsize));
 #  endif
 
-       pthread_attr_destroy (&attr); 
+       pthread_attr_destroy (&attr);
+#else
+       *staddr = NULL;
+       *stsize = (size_t)-1;
 #endif
 
        /* When running under emacs, sometimes staddr is not aligned to a page size */