/* Functions taken directly from X sources for use with the Microsoft W32 API.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1999, 2001, 2002, 2003,
- 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GNU Emacs.
#include <config.h>
#include <signal.h>
#include <stdio.h>
+#include <setjmp.h>
#include "lisp.h"
#include "keyboard.h"
#include "frame.h"
HANDLE interrupt_handle = NULL;
void
-init_crit ()
+init_crit (void)
{
InitializeCriticalSection (&critsect);
when the input queue is empty, so make it a manual reset event. */
keyboard_handle = input_available = CreateEvent (NULL, TRUE, FALSE, NULL);
- /* interrupt_handle is signalled when quit (C-g) is detected, so that
+ /* interrupt_handle is signaled when quit (C-g) is detected, so that
blocking system calls can be interrupted. We make it a manual
reset event, so that if we should ever have multiple threads
performing system calls, they will all be interrupted (I'm guessing
that would the right response). Note that we use PulseEvent to
- signal this event, so that it never remains signalled. */
+ signal this event, so that it never remains signaled. */
interrupt_handle = CreateEvent (NULL, TRUE, FALSE, NULL);
}
void
-delete_crit ()
+delete_crit (void)
{
DeleteCriticalSection (&critsect);
}
void
-signal_quit ()
+signal_quit (void)
{
- /* Make sure this event never remains signalled; if the main thread
+ /* Make sure this event never remains signaled; if the main thread
isn't in a blocking call, then this should do nothing. */
PulseEvent (interrupt_handle);
}
int nQueue = 0;
BOOL
-get_next_msg (lpmsg, bWait)
- W32Msg * lpmsg;
- BOOL bWait;
+get_next_msg (W32Msg * lpmsg, BOOL bWait)
{
BOOL bRet = FALSE;
if (nQueue)
{
- bcopy (&(lpHead->w32msg), lpmsg, sizeof (W32Msg));
+ memcpy (lpmsg, &lpHead->w32msg, sizeof (W32Msg));
{
int_msg * lpCur = lpHead;
if (!UnionRect (&(lpmsg->rect), &(lpmsg->rect),
&(lpCur->w32msg.rect)))
{
- SetRectEmpty(&(lpmsg->rect));
+ SetRectEmpty (&(lpmsg->rect));
}
myfree (lpCur);
}
BOOL
-post_msg (lpmsg)
- W32Msg * lpmsg;
+post_msg (W32Msg * lpmsg)
{
int_msg * lpNew = (int_msg *) myalloc (sizeof (int_msg));
if (!lpNew)
return (FALSE);
- bcopy (lpmsg, &(lpNew->w32msg), sizeof (W32Msg));
+ memcpy (&lpNew->w32msg, lpmsg, sizeof (W32Msg));
lpNew->lpNext = NULL;
enter_crit ();
if (!lpNew)
return (FALSE);
- bcopy (lpmsg, &(lpNew->w32msg), sizeof (W32Msg));
+ memcpy (&lpNew->w32msg, lpmsg, sizeof (W32Msg));
enter_crit ();
/* Process all messages in the current thread's queue. */
void
-drain_message_queue ()
+drain_message_queue (void)
{
MSG msg;
while (PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
*/
static int
-read_integer (string, NextString)
- register char *string;
- char **NextString;
+read_integer (register char *string, char **NextString)
{
register int Result = 0;
int Sign = 1;
}
int
-XParseGeometry (string, x, y, width, height)
- char *string;
- int *x, *y;
- unsigned int *width, *height; /* RETURN */
+XParseGeometry (char *string,
+ int *x, int *y,
+ unsigned int *width, unsigned int *height)
{
int mask = NoValue;
register char *strind;
/* x_sync is a no-op on W32. */
void
-x_sync (f)
- void *f;
+x_sync (void *f)
{
}