|
From: | Jussi Lahdenniemi |
Subject: | Re: [PATCH] Override Windows default Win-* key combinations when using Emacs |
Date: | Fri, 15 Jan 2016 09:52:38 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 |
On 15.1.2016 8.56, Jussi Lahdenniemi wrote:
The first thing I'd like to know is what buffer is that (I'm guessing *scratch* or *Messages*), and what is the value of 'a' in this call frame:the value of the name variable in the Fget_buffer_create function is " *load*", and a in frame #4 is 0x02a22101.
Ah, of course; when allocating 'b' in Fget_buffer_create, Emacs got the pointer 0x...fc, which is NOT aligned at an 8-byte boundary as required by USE_LSB_TAG. This messes up the tags and causes the crash.
So, apparently, on Windows 98 HeapAlloc does not guarantee 8-byte alignment of memory. Not that this would be documented anywhere...
How should we fix this? I can write and test the fix, but I'd like to hear your opinion on the preferred mechanism.
-- Jussi Lahdenniemi
[Prev in Thread] | Current Thread | [Next in Thread] |