lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

It could be a compiler thing - Borland C++ Builder 4 and MSVC++ 6 both let
you sink or swim in this regard - no polite automatic null pointers or zero
values here!  Whatever you find at an uninitialized memory location is what
you get, pal!


-----Original Message-----
[]On Behalf Of Ashwin Hirschi
Sent: Monday, November 29, 2004 6:27 PM
To: Lua list
Subject: Re: luasocket crash on win32

> Well, another common problem in Win32 is that, AFAIK, on Win9x
> uninitialized data (pointers, tables) has random values while on WinNT+,
> they are set to 0.

Eh? I'm not quite sure what you mean by "uninitialized data" in this case,
but as far as heap memory is concerned: I'd say that whether it's zeroed or
not is only determined by the particular memory manager you're using.

And I've never heard of  memory managers that behave differently [to this
extent] depending on the OS an application is running on. Having said that,
several heap managers have (compile-time) options to zero allocated memory
for you.

> This cause applications behave correctly on WinNT+ and crash on Win9x...

There are lots of reasons why application behaviour could differ between
various Windows versions, but - once again - I'd doubt that using memory
through a C runtime library would be one of them.

no signature is a signature.