Subject: bug#8562: Emacs 23.1 and later don't work in windows 98

From: Eli Zaretskii <[email-masked]>
Date: Tue, 07 Jun 2011 23:32:14 +0300

> Date: Tue, 7 Jun 2011 21:25:55 +0200
> From: oslsachem <[email-masked]>
> Cc: [email-masked]
> 
> >> So if you call GetGlyphOutlineW through a function pointer, like you
> >> did with the other 2 functions, and do NOT link against libunicows, do
> >> you then get a working binary?  It would be good to run such a binary
> >> for a while, and see if something else is broken, if you can afford
> >> that.
> >
> > Of course, I will check it.
> 
> The binary works without any noticeable problem.

Thank you.  I will prepare an official patch for that, which should
work both on Windows 9X and on the NT family of Windows, and will ask
you to test it.  In the meantime, if you could give this binary more
testing when you have time, it would be even better.

> Well, it has a glitch: when the window is maximized, clicking on the
> help menu item "about Emacs" brings out an alternative version of this
> buffer which doesn't have the Emacs logotype, has a slightly different
> phrasing and its links are no longer coloured.
> 
> http://www.speedyshare.com/files/28854883/EmacsWithoutLogo.png

This is not a bug: the usual "fancy" splash screen is only shown if
Emacs can display XPM or PBM images.  Otherwise, Emacs shows the
"normal" splash screen, which is what you see.  I'm guessing that you
don't have XPM or PBM libraries installed on the Windows 9X machine,
or you didn't have the necessary headers when you built Emacs (the
configure.bat script should announce what image libraries it builds
with).  See the function use-fancy-splash-screens-p in startup.el.
The file nt/INSTALL explains where to get the image libraries if you
want to build Emacs with full image support.

> In a second build, I have tried using the unicows implementation of
> AppendMenuW and I have noticed that the menu items tooltips no longer
> show.

So it looks like we are better off without libunicows, with using
function pointers to call the crucial several functions needed for
normal display.

Btw, could you please enumerate those functions you replaced?  I'm not
sure my notes about that are accurate.

> I have built an updated trunk version of Emacs with the same changes
> applied and it works equally well.

Thanks again.