unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Fabrice Popineau <fabrice.popineau@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: Jussi Lahdenniemi <jussi@aprikoodi.fi>,
	Emacs developers <emacs-devel@gnu.org>
Subject: Re: Windows 9X crash (was: [PATCH] Override Windows default Win-* key combinations when using Emacs)
Date: Fri, 15 Jan 2016 10:47:51 +0100	[thread overview]
Message-ID: <CAFgFV9Pj42=iGdpFaByXHaQaHnqsfr8OpghgJOwr93vYQxFUQw@mail.gmail.com> (raw)
In-Reply-To: <831t9jgt8y.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1727 bytes --]

Hi,

Strange that HeapAlloc() returns 4-byte aligned blocks and that is not
documented.
I used to have MSDN cdroms from that time
I would write a small program doing random allocation
and checking the alignment of the blocks returned.
Just to make sure that the problem does not lie elsewhere (?)

Fabrice

2016-01-15 9:08 GMT+01:00 Eli Zaretskii <eliz@gnu.org>:

> (Adding Fabrice, who wrote the new allocator code, to the discussion.)
>
> > Cc: emacs-devel@gnu.org
> > From: Jussi Lahdenniemi <jussi@aprikoodi.fi>
> > Date: Fri, 15 Jan 2016 09:52:38 +0200
> >
> > 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...
>
> Right, this can explain everything.  It probably means that a build
> configured --with-wide-int should also be tested there, as it has
> different alignment needs.
>
> > How should we fix this?  I can write and test the fix, but I'd like to
> > hear your opinion on the preferred mechanism.
>
> What fix did you have in mind?  Over-allocating and recording the
> offset in the initial part of the block that we don't pass to the
> application?
>

[-- Attachment #2: Type: text/html, Size: 2418 bytes --]

  parent reply	other threads:[~2016-01-15  9:47 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-05 12:51 [PATCH] Override Windows default Win-* key combinations when using Emacs Jussi Lahdenniemi
2016-01-05 13:54 ` Herring, Davis
2016-01-05 17:05   ` Eli Zaretskii
2016-01-05 19:32     ` Jussi Lahdenniemi
2016-01-05 17:05 ` Eli Zaretskii
2016-01-05 19:03   ` Rasmus
2016-01-05 19:17     ` Eli Zaretskii
2016-01-05 19:31       ` Jussi Lahdenniemi
     [not found]     ` <<83d1tf4z0h.fsf@gnu.org>
2016-01-05 19:45       ` Drew Adams
2016-01-05 19:41   ` Jussi Lahdenniemi
2016-01-05 20:01     ` Eli Zaretskii
2016-01-09 19:58   ` Jussi Lahdenniemi
2016-01-11 18:54     ` Eli Zaretskii
2016-01-12 11:16       ` Jussi Lahdenniemi
2016-01-12 15:08         ` covici
2016-01-13  5:07           ` Jussi Lahdenniemi
2016-01-12 15:54         ` Eli Zaretskii
2016-01-13  5:31           ` Jussi Lahdenniemi
2016-01-13 15:49             ` Eli Zaretskii
2016-01-13  9:16           ` Jussi Lahdenniemi
2016-01-13 11:28             ` Jussi Lahdenniemi
2016-01-13 15:57               ` Eli Zaretskii
2016-01-14 12:49                 ` Jussi Lahdenniemi
2016-01-14 17:10                   ` Jussi Lahdenniemi
2016-01-14 18:07                     ` Eli Zaretskii
2016-01-14 18:15                   ` Eli Zaretskii
2016-01-15  6:56                     ` Jussi Lahdenniemi
2016-01-15  7:52                       ` Jussi Lahdenniemi
2016-01-15  8:08                         ` Windows 9X crash (was: [PATCH] Override Windows default Win-* key combinations when using Emacs) Eli Zaretskii
2016-01-15  9:35                           ` Windows 9X crash Jussi Lahdenniemi
2016-01-15 10:18                             ` Eli Zaretskii
2016-01-15 10:31                               ` Fabrice Popineau
2016-01-15 10:33                               ` Jussi Lahdenniemi
2016-01-16  9:15                                 ` Eli Zaretskii
2016-01-15  9:47                           ` Fabrice Popineau [this message]
2016-01-15  9:56                             ` Jussi Lahdenniemi
2016-01-15 10:19                               ` Eli Zaretskii
2016-01-15  9:23                         ` [PATCH] Override Windows default Win-* key combinations when using Emacs Yuri Khan
2016-01-16  9:58                     ` Eli Zaretskii
2016-01-16 11:00                       ` Jussi Lahdenniemi
2016-01-16 11:41                         ` Eli Zaretskii
2016-02-03 13:59                         ` Jussi Lahdenniemi
2016-02-03 15:42                           ` Eli Zaretskii
2016-02-26 10:55                             ` Eli Zaretskii
2016-02-26 10:59                               ` Jussi Lahdenniemi
2016-02-27 11:34                                 ` Eli Zaretskii
2016-02-28  8:42                                   ` Paul Eggert
2016-02-28 15:50                                     ` Eli Zaretskii
2016-02-28 20:03                                       ` Paul Eggert
2016-02-28 20:10                                         ` Eli Zaretskii
2016-02-28 23:27                                           ` Paul Eggert
2016-02-29  3:31                                             ` Eli Zaretskii
2016-02-29  7:07                                               ` Paul Eggert
2016-02-29 15:52                                                 ` Eli Zaretskii
2016-02-29 19:01                                                   ` Paul Eggert
2016-03-05 10:16                                                     ` Eli Zaretskii
2016-03-08  2:57                                                       ` Paul Eggert
2016-03-08  4:46                                                         ` Clément Pit--Claudel
2016-02-28 23:33                                         ` John Wiegley
2016-02-27  2:11                               ` Lars Ingebrigtsen
2016-02-27  7:47                                 ` Eli Zaretskii
2016-02-28  4:40                                   ` Lars Ingebrigtsen
2016-01-13 15:53             ` Eli Zaretskii
     [not found] <<568BBC58.50702@aprikoodi.fi>

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFgFV9Pj42=iGdpFaByXHaQaHnqsfr8OpghgJOwr93vYQxFUQw@mail.gmail.com' \
    --to=fabrice.popineau@gmail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=jussi@aprikoodi.fi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).