GNU bug report logs -
#8562
Emacs 23.1 and later don't work in windows 98
Previous Next
Reported by: oslsachem <oslsachem <at> gmail.com>
Date: Tue, 26 Apr 2011 21:59:01 UTC
Severity: normal
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> Date: Wed, 8 Jun 2011 20:11:37 +0200
> From: oslsachem <oslsachem <at> gmail.com>
> Cc: 8562 <at> debbugs.gnu.org
>
> In any version of windows, if the window apparently does not have at
> least a certain height and I type c-h c-a, I get the *about GNU Emacs*
> buffer version of text terminal Emacs (i.e. emacs -nw) which does not
> show a logotype:
>
> http://www.speedyshare.com/files/28873451/EmacsNotHighEnough.png
>
> On the contrary, if the window has at least a certain height and I
> type c-h c-a, I get the expected *about GNU Emacs* buffer version of
> graphical Emacs which, in this case, shows the black and white,
> coarser logotype:
>
> http://www.speedyshare.com/files/28873452/EmacsHighEnough.png
Yes, this works as intended, see again the function
use-fancy-splash-screens-p, which tests the frame size against the
size of the image displayed in the fancy splash screen.
> However, I still have one more question left:
> In any version of Emacs for windows, if you start Emacs without the -Q
> option and then type c-h c-a you end up with two differently named and
> sized buffers (*GNU Emacs*, *About GNU Emacs*) which have the same
> contents and so, presumably, the same functionality. Is there a reason
> for this?
The contents are very similar, but not identical. Feel free to ask
this question on emacs-devel <at> gnu.org, though: perhaps there's a place
for improvement there.
> > Btw, could you please enumerate those functions you replaced? I'm not
> > sure my notes about that are accurate.
>
> In the end, only 3 functions seem to need to be imported from
> unicows.dll in windows 98:
>
> GetOutlineTextMetricsW
>
> GetTextMetricsW
>
> GetGlyphOutlineW
>
> These seem to be the functions signatures ( by consulting MSDN ):
>
> typedef UINT ( * GetOutlineTextMetricsW_Proc)(
> HDC hdc,
> UINT cbData,
> LPOUTLINETEXTMETRICW lpotmw
> );
> typedef BOOL ( * GetTextMetricsW_Proc)(
> HDC hdc,
> LPTEXTMETRICW lptmw
> );
> typedef DWORD ( * GetGlyphOutlineW_Proc)(
> HDC hdc,
> UINT uChar,
> UINT uFormat,
> LPGLYPHMETRICS lpgm,
> DWORD cbBuffer,
> LPVOID lpvBuffer,
> const MAT2 *lpmat2
> );
>
> I have changed two parameter types to avoid these compiler warnings:
>
> warning: passing argument 3 of 'Get_Outline_Text_Metrics_W' from
> incompatible pointer type
> note: expected 'LPOUTLINETEXTMETRIC' but argument is of type 'struct
> OUTLINETEXTMETRICW *'
>
> warning: passing argument 2 of 'Get_Text_Metrics_W' from incompatible
> pointer type
> note: expected 'LPTEXTMETRIC' but argument is of type 'struct TEXTMETRICW *'
Thanks.
This bug report was last modified 13 years and 200 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.