GNU bug report logs - #18528
24.3.93; Crash during restoration of frameset from desktop

Previous Next

Package: emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Mon, 22 Sep 2014 15:24:02 UTC

Severity: normal

Found in version 24.3.93

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 18528 <at> debbugs.gnu.org
Subject: bug#18528: 24.3.93; Crash during restoration of frameset from desktop
Date: Tue, 23 Sep 2014 07:48:40 +0200
> I certainly think so.  If GetClientRect fails, how does it make sense
> to use what we find in the rectangle data structure we passed to it?
> The values there are just garbage.

We have to check these values anyway because our window structure might
be too complex to fit into the rectangle returned by GetClientRect.  But
then we should probably also rewrite things like w32_clear_window as

  if (hdc && GetClientRect (FRAME_W32_WINDOW (f), &rect))
    w32_clear_rect (f, hdc, &rect);

>>   > +  /* Recompute the dimensions in character units, since
>>   > +     check_frame_size might have changed the pixel dimensions.  */
>>   > +  /* Consider rounding here: Currently, the root window can be
>>   > +     larger than the frame in terms of columns/lines.  */
>>   > +  new_cols = new_text_width / FRAME_COLUMN_WIDTH (f);
>>   > +  new_lines = new_text_height / FRAME_LINE_HEIGHT (f);

I never got around to ask you: Do you anywhere see a need to round up
the values of new_cols and new_lines in cases like this?

martin




This bug report was last modified 10 years and 244 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.