mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-16 08:10:43 -08:00
Fix Cygw32 build
* src/pdumper.c (dump_mm_heap_cb_release): Avoid NULL pointer dereference. * src/w32dwrite.c (INITGUID) [CYGWIN]: Don't define for Cygwin. * src/w32menu.c (w32_popup_dialog): Fix Cygw32 build. (Bug#74312)
This commit is contained in:
parent
6ddbe8c701
commit
b54fa15ffb
3 changed files with 14 additions and 6 deletions
|
|
@ -4853,11 +4853,14 @@ struct dump_memory_map_heap_control_block
|
|||
static void
|
||||
dump_mm_heap_cb_release (struct dump_memory_map_heap_control_block *cb)
|
||||
{
|
||||
eassert (cb->refcount > 0);
|
||||
if (--cb->refcount == 0)
|
||||
if (cb)
|
||||
{
|
||||
free (cb->mem);
|
||||
free (cb);
|
||||
eassert (cb->refcount > 0);
|
||||
if (--cb->refcount == 0)
|
||||
{
|
||||
free (cb->mem);
|
||||
free (cb);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
|
|||
#include <math.h>
|
||||
#include <windows.h>
|
||||
|
||||
#ifndef MINGW_W64
|
||||
#if !defined MINGW_W64 && !defined CYGWIN
|
||||
# define INITGUID
|
||||
#endif
|
||||
#include <initguid.h>
|
||||
|
|
@ -659,7 +659,7 @@ w32_dwrite_encode_char (struct font *font, int c)
|
|||
if (dwrite_font_face == NULL)
|
||||
return FONT_INVALID_CODE;
|
||||
hr = dwrite_font_face->lpVtbl->GetGlyphIndices (dwrite_font_face,
|
||||
&c, 1, &index);
|
||||
(UINT32 *) &c, 1, &index);
|
||||
if (verify_hr (hr, "Failed to GetGlyphIndices"))
|
||||
{
|
||||
if (index == 0)
|
||||
|
|
|
|||
|
|
@ -186,6 +186,11 @@ task_dialog_callback (HWND hwnd, UINT msg, WPARAM wParam,
|
|||
Lisp_Object
|
||||
w32_popup_dialog (struct frame *f, Lisp_Object header, Lisp_Object contents)
|
||||
{
|
||||
#ifdef NTGUI_UNICODE
|
||||
typedef int (WINAPI *WideCharToMultiByte_Proc)(UINT,DWORD,LPCWSTR,int,LPSTR,
|
||||
int,LPCSTR,LPBOOL);
|
||||
static MultiByteToWideChar_Proc pMultiByteToWideChar = MultiByteToWideChar;
|
||||
#endif /* NTGUI_UNICODE */
|
||||
check_window_system (f);
|
||||
|
||||
if (task_dialog_indirect)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue