emacs-devel
[Top][All Lists]
Advanced

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

Re: display word wrapping


From: Juanma Barranquero
Subject: Re: display word wrapping
Date: Mon, 31 May 2004 02:40:19 +0200

On Sun, 30 May 2004 20:27:40 +0200, "Eli Zaretskii" <address@hidden> wrote:

> So we are lucky ;-)

Yeah ;)

> [I apologize in advance if I'm going to say things that you already
> know.]

[Don't worry; some things I already know, some not, some I had forgotten
to try...]

> This means Emacs tried to dereference an invalid pointer and read from
> the invalid address.  Exception 0xC0000005 is Page Fault, the Windows
> equivalent of SIGSEGV, and the bad address is 0x4 (a.k.a. a NULL
> pointer).

[...]

> How exactly is img->spec invalid?  Can you post the details (xtype
> etc.)?

Basically, img points to nowhere, so img->spec is some random value.

> If you change it to
> 
>    volatile struct image *img;
> 
> does the problem go away as well?

No.

> If the clobbered pointer is in a register, then data breakpoint will
> not help, but you could still do it by single-stepping the program and
> looking for a line in the code where the value of that register is
> clobbered.

The register used to store img (edi, in my tests) is being modified by
this call:

    img->load_failed_p = img->type->load (f, img) == 0;

If I put

  __asm push img
  img->load_failed_p = img->type->load (f, img) == 0;
  __asm pop img

(which forces a reload of the edi register from the stored value of img),
it works.

More ideas?

                                                           /L/e/k/t/u





reply via email to

[Prev in Thread] Current Thread [Next in Thread]