1993-09-29 13:21:49 +01:00
|
|
|
%{
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
/*
|
|
|
|
* Parser for command lines in the Wine debugger
|
1993-09-29 13:21:49 +01:00
|
|
|
*
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
* Copyright 1993 Eric Youngdale
|
Release 951105
Fri Nov 3 20:08:17 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Attempt to check for -li386 on NetBSD. Please test this.
Mon Oct 30 12:40:32 EST 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
Eliminated various warnings with either explicit casts or more
accurate variable/parameter declarations (e.g. INT instead of short
or WORD).
Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
macros.
* [controls/edit.c] [windows/defdlg.c]
Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
DEFDLG_FindDefButton to avoid warnings.
* [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
[windows/message.c] [windows/nonclient.c]
Converted MAKEPOINT macro call to manual conversion.
* [include/windows.h]
For WINELIB32, structures POINT, SIZE, and RECT have LONG members
instead of INT. This also invalidates the macro MAKEPOINT(), which
is not supported in Win32. Also defined the POINTS structure (SHORT
members) and the MAKEPOINTS macro.
* [misc/commdlg.c]
Changed a lot of 'strcpy' calls to 'strncpy' calls. I'm desperate to
find this memory bug, and this should be done anyway.
* [controls/edit.c]
Well, the alteration mentioned above didn't do it, but #ifdef'ing out
a few lines in EDIT_ClearText did. This leads to bugs, but for now,
it's better than bizzare memory troubles.
* [toolkit/miscstubs.c]
Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
and RELAY32_GetEntryPoint(). These are the most popular warnings, and
their current implementation seems fine.
Sat Oct 28 09:39:18 1995 Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
* [objects/cursoricon.c]
Fix for "broken" X servers that invert masked cursor colors.
Fri Oct 27 19:27:21 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [windows/dialog.c] [windows/nonclient.c]
Remove unnecessary items from the system menu.
Thu Oct 26 05:03:03 MET 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/color.c] [objects/palette.c]
Make GetNearestColor return a RGB value instead of a pixel value.
Wed Oct 25 23:33:39 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/desktop.c][controls/menu.c][include/menu.h]
Changed WORD parameters to UINT parameters.
* [include/wintypes.h]
Made UINT 32bit for WINELIB.
* [loader/main.c]
Disabled RELAY32_Init and MODULE_Init for WINELIB.
* [misc/main.c]
Assume CPU386 for WINELIB.
* [rc/winerc]
add_popup: set MF_POPUP flag on menu item.
* [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
Add resource demo hello3 for WINELIB.
New file README.resources.
* [toolkit/miscstubs.c]
Add a case for 17.
Tue Oct 17 15:13:10 IST 1995 Itai Nahshon <nahshon@vnet.ibm.com>
* [loader/module.c]
Do not append .exe if the file name already has an extension.
* [misc/profile.c]
Avoid creating a file with a junk name if a .ini file does not
exist.
* [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
Added a lot of dummy stubs for Windows Hebrew version.
Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
* [controls/button.c]
Fix for buttons with no label.
* [controls/combo.c][controls/listbox.c]
Fixes for scrollbar positioning. Now disappears correctly
for short lists.
* [controls/edit.c]
Handle memory allocation differently when building as library.
* [controls/static]
Don't destroy old icon before drawing new icon. (Fixes landscape/
portrait toggle icon in print dialog.)
* [if1632/gdi.spec]
New functions SetMetaFileBits and GetMetaFileBits
* [include/sysmetrics.h] [windows/sysmetrics.c]
Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
* [include/windows.h]
META_EXTTEXTOUT, not META_SETTEXTOUT
define GetCurrentTime as GetTickCount (for wine library)
* [loader/main.c]
Don't initialize built-in modules in wine library
* [memory/local.c]
LocalReAlloc was defined incorrectly. Swap flags and size arguments.
* [misc/main.c]
Always report CPUTYPE=4 to wine library.
* [objects/dib.c]
RLE8 images were missing top line when decompressed.
* [objects/metafile.c]
SetMetaFileBits and GetMetaFileBits implemented. Works when called
from winhelp. More testing needed. Various memory leaks plugged.
Various other bug fixes. New metafile operations added in
PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
SetMapperFlags, RealizePalette, ExtTextOut, Escape. Testing needed.
* [toolkit/heap.c]
LocalUnLock changed to LocalUnlock
Sun Oct 15 21:55:33 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsock.c]
Return the correct error number, for host lookup operations.
Also, correct the problem with send_message.
Fri Oct 13 19:04:35 1995 Morten Welinder <terra@diku.dk>
* [Makefile.in]
Using nm's built-in sorting.
* [*/*.c]
Use xmalloc for malloc and xrealloc for realloc in all ungarded
cases.
* [debugger/dbg.y]
Handle C-like expressions. Clean-up.
* [debugger/debug.l]
Lots of new tokens for expressions.
* [debugger/info.c]
Implement "list" command for disassembling.
* [misc/ole2nls.c]
Implement more Danish stuff.
Fri Oct 6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
* [loader/module.c]
Updated self-loading modules to support for new 32 bit
stack frames.
1995-11-05 15:39:02 +01:00
|
|
|
* Copyright 1995 Morten Welinder
|
2000-03-15 20:57:20 +01:00
|
|
|
* Copyright 2000 Eric Pouech
|
2002-03-10 00:29:33 +01:00
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
2006-05-18 14:49:52 +02:00
|
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
1993-09-29 13:21:49 +01:00
|
|
|
*/
|
|
|
|
|
1999-05-08 17:47:44 +02:00
|
|
|
#include "config.h"
|
2003-11-27 01:59:36 +01:00
|
|
|
#include "wine/port.h"
|
1999-05-08 17:47:44 +02:00
|
|
|
|
2006-09-09 11:26:35 +02:00
|
|
|
#include <stdio.h>
|
1999-02-28 13:27:56 +01:00
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
1999-04-01 10:16:08 +02:00
|
|
|
|
Release 950706
Wed Jul 5 19:06:35 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [controls/scroll.c]
Fixed drawing bug that caused part of a non-client scroll bar
to be painted even when the scroll-bar was hidden.
* [debugger/break.c] [debugger/dbg.y]
Rewrote breakpoint handling to work in 16-bit mode.
Implemented single-stepping ('step' and 'next' instructions).
* [debugger/debug.l]
Format specifier is now a separate token.
Entering an empty line at the debugger prompt causes the previous
command to be repeated, like under gdb.
* [debugger/debug.l] [debugger/registers.c]
Differentiate 16-bit and 32-bit registers without taking current
mode into account ($eax is always 32-bit, $ax always 16-bit).
* [debugger/stack.c]
Fixed stack information routines to differentiate between 16-bit
and 32-bit stacks.
* [loader/task.c]
Option -debug now sets a breakpoint at the first instruction of
every loaded task.
* [miscemu/instr.c]
Added handling of lock, repe and repne prefixes.
* [objects/dib.c]
Changed StretchDIBits() to do the correct thing, even if it's still
not really optimal.
* [windows/graphics.c]
Fixes in RoundRect(), thanks to Babak Masalehdan.
* [windows/message.c]
Tried to fix mouse event handling with respect to disabled
windows.
* [windows/painting.c]
Clear WIN_NEEDS_NCPAINT flag before sending WM_NCPAINT to avoid
infinite loops.
* [windows/win.c]
Fixed IsWindowVisible() to return FALSE when one of the parent
windows is hidden.
Sat Jul 1 22:08:21 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [if1632/compobj.spec][misc/compobj.c]
CoGetMalloc: New function
Added relay entries for COMPOBJ ordinals above 100
CoInitialize: Changed parameter to DWORD
* [if1632/ole2.spec]
Exported implementation of OleBuildVersion
* [if1632/ole2disp.spec][misc/ole2disp.c][misc/Imakefile]
ole2disp.c: New file
SysAllocString, SysReallocString, SysAllocStringLen,
SysReAllocStringLen, SysFreeString, SysStringLen: new functions
* [if1632/ole2nls.spec][include/winnls.h][misc/ole2nls.c]
CompareStringA: New function
Thu Jun 29 19:42:02 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [objects/font.c] [if1632/gdi.spec]
New stubs for CreateScalableFontResource, GetGlyphOutline.
Thu Jun 29 13:47:08 GMT 1995 Gran Thyni (goran@norrsken.bildbasen.se)
* [misc/commdlg.c]
Extensive changes and bug fixes to FileDialog handling,
behaves more like native Windows.
Wed Jun 28 13:04:44 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [controls/listbox.c] [controls/combo.c]
Some minor optimizations.
* [memory/local.c]
LOCAL_FindFreeBlock(): Never use the last one.
* [memory/global.c]
GlobalReAlloc(): GMEM_MODIFY must not be ignored when size==0.
* [misc/file.c]
read() returns an error when length==0. This is not what Windows
programs expect, so pay attention to this in _lread(). Changed this
in _lwrite(), _hread(), _hwrite(), too.
* [loader/resource.c]
LoadIcon(): Ignore bih->biSizeImage, some icons have wrong values in
there.
* [if1632/shell.spec] [misc/shell.c]
Wrong spec file entries caused havoc: HKEY has 32 bit, not 16.
Accept some more combinations of parameters in the Reg..() functions.
* [if1632/toolhelp.spec]
Make InterruptRegister() and InterruptUnregister() return false.
* [windows/hook.c]
CallNextHookEx() used to crash when called with a null hhook. Fixed.
Wed Jun 28 10:14:34 1995 Martin von Loewis <martin@informatik.hu-berlin.de>
* [include/neexe.h][loader/ne_image.c]
NE_LoadSegment: Detect iterated segments
* [misc/ole2nls.c]
LOCALE_SLONGDATE: fixed typo
* [miscemu/int5c.c]
Reordered include files to avoid conflicts with Linux libc.5.1
* [rc/winerc.c]
Added -b option to process binary resource files into C arrays
* [include/callback.h]
CallWndProc: Added dummy ds parameter for libwine
* [include/gdi.h][include/user.h]
USER_HEAP_ALLOC, GDI_HEAP_ALLOC: dropped flags parameter
* [include/ldt.h][include/stackframe.h]
defined segment conversion macros for libwine
* [misc/atom.c]
Defined USER_HeapSel for libwine
* [misc/main.c]
Disable -dll option for libwine
* [misc/user.c]
removed GetFreeSystemResources, SystemHeapInfo from libwine for now
* [toolkit/heap.c]
fixed LocalLock prototype
* [toolkit/sup.c]
sync'ed load_mz_header, load_ne_header with structures
* [toolkit/winmain.c]
Disabled resource DLLs for libwine for now
Mon Jun 26 19:30:24 1995 Hans de Graaff (graaff@twi72.twi.tudelft.nl)
* [misc/main.c]
Fixed -enhanced option to report a 386 CPU instead of a 286.
Fri Jun 23 23:18:25 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [misc/dos_fs.c]
Remove maximum open dosdirent limit (fixing the winfile.exe
problem) by using telldir()/seekdir().
Fri Jun 23 13:42:25 1995 Hans de Graaff (graaff@twi72.twi.tudelft.nl)
* [misc/profile.c]
Fixed problem parsing empty lines within sections in .ini files.
1995-07-06 19:18:27 +02:00
|
|
|
#include "debugger.h"
|
2005-11-28 17:32:54 +01:00
|
|
|
#include "wine/exception.h"
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
#include "expr.h"
|
|
|
|
|
2006-09-12 09:04:43 +02:00
|
|
|
int dbg_lex(void);
|
|
|
|
static int dbg_error(const char*);
|
2009-01-20 09:13:23 +01:00
|
|
|
static void parser(const char*);
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
|
1993-09-29 13:21:49 +01:00
|
|
|
%}
|
|
|
|
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
%union
|
|
|
|
{
|
2004-06-04 02:59:16 +02:00
|
|
|
struct dbg_lvalue lvalue;
|
|
|
|
char* string;
|
2009-12-10 15:23:45 +01:00
|
|
|
INT_PTR integer;
|
2009-12-12 12:19:44 +01:00
|
|
|
IMAGEHLP_LINE64 listing;
|
2004-06-04 02:59:16 +02:00
|
|
|
struct expr* expression;
|
|
|
|
struct type_expr_t type;
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
}
|
1993-09-29 13:21:49 +01:00
|
|
|
|
2004-06-23 02:10:02 +02:00
|
|
|
%token tCONT tPASS tSTEP tLIST tNEXT tQUIT tHELP tBACKTRACE tALL tINFO tUP tDOWN
|
2010-12-05 17:35:55 +01:00
|
|
|
%token tENABLE tDISABLE tBREAK tHBREAK tWATCH tRWATCH tDELETE tSET tPRINT tEXAM
|
2006-06-05 18:58:00 +02:00
|
|
|
%token tABORT tECHO
|
2009-08-17 07:15:10 +02:00
|
|
|
%token tCLASS tMAPS tSTACK tSEGMENTS tSYMBOL tREGS tALLREGS tWND tLOCAL tEXCEPTION
|
2007-01-02 14:23:48 +01:00
|
|
|
%token tPROCESS tTHREAD tEOL tEOF
|
|
|
|
%token tFRAME tSHARE tMODULE tCOND tDISPLAY tUNDISPLAY tDISASSEMBLE
|
2002-07-30 01:50:59 +02:00
|
|
|
%token tSTEPI tNEXTI tFINISH tSHOW tDIR tWHATIS tSOURCE
|
2009-08-17 07:15:10 +02:00
|
|
|
%token <string> tPATH tIDENTIFIER tSTRING tINTVAR
|
1996-03-14 19:08:34 +01:00
|
|
|
%token <integer> tNUM tFORMAT
|
2008-10-25 09:12:30 +02:00
|
|
|
%token tSYMBOLFILE tRUN tATTACH tDETACH tKILL tMAINTENANCE tTYPE tMINIDUMP
|
2005-05-23 18:22:44 +02:00
|
|
|
%token tNOPROCESS
|
Release 950817
Thu Aug 17 19:30:14 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [*/Makefile.in]
Removed winelibclean target, as it doesn't work anyway.
* [controls/button.c]
Avoid drawing the focus rectangle outside of the button.
* [controls/widgets.c]
Fixed bug with the size of the reserved bytes for the Edit
control (caused Eudora to crash).
* [debugger/*] [include/debugger.h]
Unified debugger address handling. Segmented and linear addresses
are no grouped in a single type DBG_ADDR.
All commands now accept seg:off addresses.
Module entry points are now loaded upon first entry to the
debugger, so that entry points of the loaded executable also
appear in the symbol table.
* [include/registers.h] [miscemu/*.c]
Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
This makes code less readable, but will prevent a lot of name
clashes with other definitions. It also avoids a hidden reference
to the 'context' variable.
* [ipc/dde_atom.c] [misc/atom.c]
All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
to allow supporting integer atoms.
Moved atom.c to memory/ directory.
* [loader/task.c]
Fixed environment allocation to compute the size dynamically.
Added 'windir' environment variable.
Fixed GetDOSEnvironment() to return the current task environment.
* [windows/message.c]
Fixed bug in MSG_GetWindowForEvent().
Wed Aug 9 11:40:43 1995 Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
* [include/ole.h]
Added a lot of structures from my Borland Manual. Neither complete,
nor 100% right (check please)
* [misc/shell.c]
Fixed some of the Reg* functions.
Enhanced ShellExecute.
Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
* [misc/dos_fs.c]
Make umsdos mounted windows dirs work again.
* [miscemu/emulate.c]
Added some comments, preimplementation of subfunction 7.
* [multimedia/mmsystem.c]
Implemented mciSendString. not complete, not clean, not
necessarily working (only checked with a program which uses
'cdaudio' (one working program is cool.exe, a shareware waveditor
with cdaudio play facilities.)
* [multimedia/mcicda.c]
Segptr fixes in DriverProc
Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
link to your real cdrom device.
Tue Aug 8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
* [loader/resource.c]
Don't crash in a LoadString to NULL
* [loader/resource.c]
Fixed accelerators to work with modifiers. (ALT-x modifiers still
won't work unless the ALT keypress exited the menu.)
* [misc/file.c]
Expand a file to the current offset with an _lwrite of size zero.
* [misc/file.c]
Set a newly created file to read-write instead of write-only.
Sun Aug 6 20:28:35 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/main.c] [include/msdos.h]
Fixed to return DOS version 6.22, and the correct byte order
for Windows programs.
Wed Aug 2 12:36:33 1995 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
* [include/options.h] [memory/global.c] [misc/main.c]
Make the new IPC run-time selectible, disabling it by default.
(I think it's only useful for libwine, anyway.)
* [loader/task.c] [memory/selector.c]
In FreeSelector(), walk up the stack and fix the frames.
* [objects/dib.c]
Missing break statement in DIB_SetImageBits_RLE8().
In GetDIBits(), set the compression flag in the bitmap info to zero.
* [windows/dialog.c]
GetNextDlgGroupItem() needs to treat the first child as if it had
an implicit WS_GROUP bit set.
Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
* [misc/dos_fs.c]
Quick'n dirty fix for the initialisation of the Z: information
structure.
1995-08-17 19:11:36 +02:00
|
|
|
|
2002-06-01 04:55:48 +02:00
|
|
|
%token tCHAR tSHORT tINT tLONG tFLOAT tDOUBLE tUNSIGNED tSIGNED
|
Release 970120
Sun Jan 19 11:46:48 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [loader/module.c]
Fixed LoadModule() to always call the DLL initialization code.
* [windows/event.c]
Moved all the keyboard stuff to windows/keyboard.c
* [tools/build.c]
Fixed Win32 register functions.
Sat Jan 18 22:24:41 1997 David Makepeace <D.Makepeace@mailbox.uq.oz.au>
* [tools/makedep.c]
Fixed bug which causes SEGV on Solaris x86.
Fri Jan 17 18:32:27 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c]
Implemented WM_UNDO, WM_CONTEXTMENU (temporary using WM_RBUTTONUP),
WM_COMMAND, WM_INITPOPUPMENU, WM_SYSKEYDOWN.
Fixed EM_SETSEL and some minor bugs (features).
Hence: fully functional undo and a win95 menu with the right mouse
button.
* [include/resources.h] [resources/TODO] [resources/sysres_??.rc]
Added a context menu for the edit control.
Translations, please ...
Fri Jan 17 08:29:52 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Move EVENT_ToAscii to windows/keyboard.c (where name ToAscii)
Fixed Keypad keys 0-9 and . in EVENT_event_to_vkey.
Added 3-state handling of toggle keys (CapsLock, NumLock) in order
to make them work with any X server.
Toggle keys now generate WM_KEYDOWN and WM_KEYUP on each pressing.
* [include/keyboard.h]
Totally replaced the file (formerly containing the vkcase definitions)
by the declaration of 'extern' variables contained by event.c and used
by keyboard.c
* [windows/keyboard.c]
Started to rewrite VkKeyScan and MapVirtualKey, to make them use the
table keyc2vkey or X functions only.
ToAscii : added keypad 0-9 and . special case.
Changed toggle keys active mask from 0x80 to 0x1.
* [misc/keyboard.c]
File deleted. Contents moved to windows/keyboard.c.
* [misc/main.c]
Added putenv XKB_DISABLE to disable XKB extension (which, when
present, causes AltGr to change keyboard group instead of being a
modifier).
Tue Jan 14 22:56:43 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [windows/event.c]
Do not assume NumLockMask is Mod2Mask, but compute it by scanning
output of XGetModifierMapping for XK_Num_Lock.
Tue Jan 14 15:49:49 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [loader/pe_*.c] [include/peexe.h] [include/resource32.h]
[debugger/*.c]
General clean up.
Changed defines/structures to match Windows NT SDK.
* [loader/main.c]
Don't crash on empty command-line.
* [windows/winpos.c]
winpos.c made win32 clean.
* [misc/ntdll.c]
Some string conversion additions.
* [files/file.c]
GetFileAttributes/GetTempFileName fixed.
* [misc/ver.c]
VerInstallFile implemented.
Mon Jan 13 15:03:11 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [tools/build.c]: Use PREFIX also in stabs messages.
Mon Jan 13 10:40:33 1997 John Harvey <john@division.co.uk>
* [graphics/win16drv/*] [include/win16drv.h]
Many fixes and some new features.
* [graphics/x11drv/font.c] [graphics/x11drv/init.c]
[include/x11drv.h] [objects/font.c]
GetTextMetrics() moved to graphics driver.
* [if1632/gdi.spec] [misc/fontengine.c] [misc/Makefile.in]
New dummy EngineEnumerateFont, EngineRealizeFont functions.
* [include/windows.h]
TEXTFORM16 and FONTINFO16 structure definitions moved here from
include/win16drv.h
1997-01-20 20:43:45 +01:00
|
|
|
%token tSTRUCT tUNION tENUM
|
|
|
|
|
Release 951105
Fri Nov 3 20:08:17 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Attempt to check for -li386 on NetBSD. Please test this.
Mon Oct 30 12:40:32 EST 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
Eliminated various warnings with either explicit casts or more
accurate variable/parameter declarations (e.g. INT instead of short
or WORD).
Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
macros.
* [controls/edit.c] [windows/defdlg.c]
Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
DEFDLG_FindDefButton to avoid warnings.
* [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
[windows/message.c] [windows/nonclient.c]
Converted MAKEPOINT macro call to manual conversion.
* [include/windows.h]
For WINELIB32, structures POINT, SIZE, and RECT have LONG members
instead of INT. This also invalidates the macro MAKEPOINT(), which
is not supported in Win32. Also defined the POINTS structure (SHORT
members) and the MAKEPOINTS macro.
* [misc/commdlg.c]
Changed a lot of 'strcpy' calls to 'strncpy' calls. I'm desperate to
find this memory bug, and this should be done anyway.
* [controls/edit.c]
Well, the alteration mentioned above didn't do it, but #ifdef'ing out
a few lines in EDIT_ClearText did. This leads to bugs, but for now,
it's better than bizzare memory troubles.
* [toolkit/miscstubs.c]
Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
and RELAY32_GetEntryPoint(). These are the most popular warnings, and
their current implementation seems fine.
Sat Oct 28 09:39:18 1995 Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
* [objects/cursoricon.c]
Fix for "broken" X servers that invert masked cursor colors.
Fri Oct 27 19:27:21 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [windows/dialog.c] [windows/nonclient.c]
Remove unnecessary items from the system menu.
Thu Oct 26 05:03:03 MET 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/color.c] [objects/palette.c]
Make GetNearestColor return a RGB value instead of a pixel value.
Wed Oct 25 23:33:39 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/desktop.c][controls/menu.c][include/menu.h]
Changed WORD parameters to UINT parameters.
* [include/wintypes.h]
Made UINT 32bit for WINELIB.
* [loader/main.c]
Disabled RELAY32_Init and MODULE_Init for WINELIB.
* [misc/main.c]
Assume CPU386 for WINELIB.
* [rc/winerc]
add_popup: set MF_POPUP flag on menu item.
* [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
Add resource demo hello3 for WINELIB.
New file README.resources.
* [toolkit/miscstubs.c]
Add a case for 17.
Tue Oct 17 15:13:10 IST 1995 Itai Nahshon <nahshon@vnet.ibm.com>
* [loader/module.c]
Do not append .exe if the file name already has an extension.
* [misc/profile.c]
Avoid creating a file with a junk name if a .ini file does not
exist.
* [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
Added a lot of dummy stubs for Windows Hebrew version.
Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
* [controls/button.c]
Fix for buttons with no label.
* [controls/combo.c][controls/listbox.c]
Fixes for scrollbar positioning. Now disappears correctly
for short lists.
* [controls/edit.c]
Handle memory allocation differently when building as library.
* [controls/static]
Don't destroy old icon before drawing new icon. (Fixes landscape/
portrait toggle icon in print dialog.)
* [if1632/gdi.spec]
New functions SetMetaFileBits and GetMetaFileBits
* [include/sysmetrics.h] [windows/sysmetrics.c]
Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
* [include/windows.h]
META_EXTTEXTOUT, not META_SETTEXTOUT
define GetCurrentTime as GetTickCount (for wine library)
* [loader/main.c]
Don't initialize built-in modules in wine library
* [memory/local.c]
LocalReAlloc was defined incorrectly. Swap flags and size arguments.
* [misc/main.c]
Always report CPUTYPE=4 to wine library.
* [objects/dib.c]
RLE8 images were missing top line when decompressed.
* [objects/metafile.c]
SetMetaFileBits and GetMetaFileBits implemented. Works when called
from winhelp. More testing needed. Various memory leaks plugged.
Various other bug fixes. New metafile operations added in
PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
SetMapperFlags, RealizePalette, ExtTextOut, Escape. Testing needed.
* [toolkit/heap.c]
LocalUnLock changed to LocalUnlock
Sun Oct 15 21:55:33 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsock.c]
Return the correct error number, for host lookup operations.
Also, correct the problem with send_message.
Fri Oct 13 19:04:35 1995 Morten Welinder <terra@diku.dk>
* [Makefile.in]
Using nm's built-in sorting.
* [*/*.c]
Use xmalloc for malloc and xrealloc for realloc in all ungarded
cases.
* [debugger/dbg.y]
Handle C-like expressions. Clean-up.
* [debugger/debug.l]
Lots of new tokens for expressions.
* [debugger/info.c]
Implement "list" command for disassembling.
* [misc/ole2nls.c]
Implement more Danish stuff.
Fri Oct 6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
* [loader/module.c]
Updated self-loading modules to support for new 32 bit
stack frames.
1995-11-05 15:39:02 +01:00
|
|
|
/* %left ',' */
|
|
|
|
/* %left '=' OP_OR_EQUAL OP_XOR_EQUAL OP_AND_EQUAL OP_SHL_EQUAL \
|
|
|
|
OP_SHR_EQUAL OP_PLUS_EQUAL OP_MINUS_EQUAL \
|
|
|
|
OP_TIMES_EQUAL OP_DIVIDE_EQUAL OP_MODULO_EQUAL */
|
|
|
|
/* %left OP_COND */ /* ... ? ... : ... */
|
|
|
|
%left OP_LOR
|
|
|
|
%left OP_LAND
|
|
|
|
%left '|'
|
|
|
|
%left '^'
|
|
|
|
%left '&'
|
|
|
|
%left OP_EQ OP_NE
|
|
|
|
%left '<' '>' OP_LE OP_GE
|
Release 970120
Sun Jan 19 11:46:48 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [loader/module.c]
Fixed LoadModule() to always call the DLL initialization code.
* [windows/event.c]
Moved all the keyboard stuff to windows/keyboard.c
* [tools/build.c]
Fixed Win32 register functions.
Sat Jan 18 22:24:41 1997 David Makepeace <D.Makepeace@mailbox.uq.oz.au>
* [tools/makedep.c]
Fixed bug which causes SEGV on Solaris x86.
Fri Jan 17 18:32:27 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c]
Implemented WM_UNDO, WM_CONTEXTMENU (temporary using WM_RBUTTONUP),
WM_COMMAND, WM_INITPOPUPMENU, WM_SYSKEYDOWN.
Fixed EM_SETSEL and some minor bugs (features).
Hence: fully functional undo and a win95 menu with the right mouse
button.
* [include/resources.h] [resources/TODO] [resources/sysres_??.rc]
Added a context menu for the edit control.
Translations, please ...
Fri Jan 17 08:29:52 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Move EVENT_ToAscii to windows/keyboard.c (where name ToAscii)
Fixed Keypad keys 0-9 and . in EVENT_event_to_vkey.
Added 3-state handling of toggle keys (CapsLock, NumLock) in order
to make them work with any X server.
Toggle keys now generate WM_KEYDOWN and WM_KEYUP on each pressing.
* [include/keyboard.h]
Totally replaced the file (formerly containing the vkcase definitions)
by the declaration of 'extern' variables contained by event.c and used
by keyboard.c
* [windows/keyboard.c]
Started to rewrite VkKeyScan and MapVirtualKey, to make them use the
table keyc2vkey or X functions only.
ToAscii : added keypad 0-9 and . special case.
Changed toggle keys active mask from 0x80 to 0x1.
* [misc/keyboard.c]
File deleted. Contents moved to windows/keyboard.c.
* [misc/main.c]
Added putenv XKB_DISABLE to disable XKB extension (which, when
present, causes AltGr to change keyboard group instead of being a
modifier).
Tue Jan 14 22:56:43 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [windows/event.c]
Do not assume NumLockMask is Mod2Mask, but compute it by scanning
output of XGetModifierMapping for XK_Num_Lock.
Tue Jan 14 15:49:49 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [loader/pe_*.c] [include/peexe.h] [include/resource32.h]
[debugger/*.c]
General clean up.
Changed defines/structures to match Windows NT SDK.
* [loader/main.c]
Don't crash on empty command-line.
* [windows/winpos.c]
winpos.c made win32 clean.
* [misc/ntdll.c]
Some string conversion additions.
* [files/file.c]
GetFileAttributes/GetTempFileName fixed.
* [misc/ver.c]
VerInstallFile implemented.
Mon Jan 13 15:03:11 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [tools/build.c]: Use PREFIX also in stabs messages.
Mon Jan 13 10:40:33 1997 John Harvey <john@division.co.uk>
* [graphics/win16drv/*] [include/win16drv.h]
Many fixes and some new features.
* [graphics/x11drv/font.c] [graphics/x11drv/init.c]
[include/x11drv.h] [objects/font.c]
GetTextMetrics() moved to graphics driver.
* [if1632/gdi.spec] [misc/fontengine.c] [misc/Makefile.in]
New dummy EngineEnumerateFont, EngineRealizeFont functions.
* [include/windows.h]
TEXTFORM16 and FONTINFO16 structure definitions moved here from
include/win16drv.h
1997-01-20 20:43:45 +01:00
|
|
|
%left OP_SHL OP_SHR
|
Release 951105
Fri Nov 3 20:08:17 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Attempt to check for -li386 on NetBSD. Please test this.
Mon Oct 30 12:40:32 EST 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
Eliminated various warnings with either explicit casts or more
accurate variable/parameter declarations (e.g. INT instead of short
or WORD).
Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
macros.
* [controls/edit.c] [windows/defdlg.c]
Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
DEFDLG_FindDefButton to avoid warnings.
* [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
[windows/message.c] [windows/nonclient.c]
Converted MAKEPOINT macro call to manual conversion.
* [include/windows.h]
For WINELIB32, structures POINT, SIZE, and RECT have LONG members
instead of INT. This also invalidates the macro MAKEPOINT(), which
is not supported in Win32. Also defined the POINTS structure (SHORT
members) and the MAKEPOINTS macro.
* [misc/commdlg.c]
Changed a lot of 'strcpy' calls to 'strncpy' calls. I'm desperate to
find this memory bug, and this should be done anyway.
* [controls/edit.c]
Well, the alteration mentioned above didn't do it, but #ifdef'ing out
a few lines in EDIT_ClearText did. This leads to bugs, but for now,
it's better than bizzare memory troubles.
* [toolkit/miscstubs.c]
Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
and RELAY32_GetEntryPoint(). These are the most popular warnings, and
their current implementation seems fine.
Sat Oct 28 09:39:18 1995 Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
* [objects/cursoricon.c]
Fix for "broken" X servers that invert masked cursor colors.
Fri Oct 27 19:27:21 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [windows/dialog.c] [windows/nonclient.c]
Remove unnecessary items from the system menu.
Thu Oct 26 05:03:03 MET 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/color.c] [objects/palette.c]
Make GetNearestColor return a RGB value instead of a pixel value.
Wed Oct 25 23:33:39 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/desktop.c][controls/menu.c][include/menu.h]
Changed WORD parameters to UINT parameters.
* [include/wintypes.h]
Made UINT 32bit for WINELIB.
* [loader/main.c]
Disabled RELAY32_Init and MODULE_Init for WINELIB.
* [misc/main.c]
Assume CPU386 for WINELIB.
* [rc/winerc]
add_popup: set MF_POPUP flag on menu item.
* [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
Add resource demo hello3 for WINELIB.
New file README.resources.
* [toolkit/miscstubs.c]
Add a case for 17.
Tue Oct 17 15:13:10 IST 1995 Itai Nahshon <nahshon@vnet.ibm.com>
* [loader/module.c]
Do not append .exe if the file name already has an extension.
* [misc/profile.c]
Avoid creating a file with a junk name if a .ini file does not
exist.
* [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
Added a lot of dummy stubs for Windows Hebrew version.
Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
* [controls/button.c]
Fix for buttons with no label.
* [controls/combo.c][controls/listbox.c]
Fixes for scrollbar positioning. Now disappears correctly
for short lists.
* [controls/edit.c]
Handle memory allocation differently when building as library.
* [controls/static]
Don't destroy old icon before drawing new icon. (Fixes landscape/
portrait toggle icon in print dialog.)
* [if1632/gdi.spec]
New functions SetMetaFileBits and GetMetaFileBits
* [include/sysmetrics.h] [windows/sysmetrics.c]
Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
* [include/windows.h]
META_EXTTEXTOUT, not META_SETTEXTOUT
define GetCurrentTime as GetTickCount (for wine library)
* [loader/main.c]
Don't initialize built-in modules in wine library
* [memory/local.c]
LocalReAlloc was defined incorrectly. Swap flags and size arguments.
* [misc/main.c]
Always report CPUTYPE=4 to wine library.
* [objects/dib.c]
RLE8 images were missing top line when decompressed.
* [objects/metafile.c]
SetMetaFileBits and GetMetaFileBits implemented. Works when called
from winhelp. More testing needed. Various memory leaks plugged.
Various other bug fixes. New metafile operations added in
PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
SetMapperFlags, RealizePalette, ExtTextOut, Escape. Testing needed.
* [toolkit/heap.c]
LocalUnLock changed to LocalUnlock
Sun Oct 15 21:55:33 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsock.c]
Return the correct error number, for host lookup operations.
Also, correct the problem with send_message.
Fri Oct 13 19:04:35 1995 Morten Welinder <terra@diku.dk>
* [Makefile.in]
Using nm's built-in sorting.
* [*/*.c]
Use xmalloc for malloc and xrealloc for realloc in all ungarded
cases.
* [debugger/dbg.y]
Handle C-like expressions. Clean-up.
* [debugger/debug.l]
Lots of new tokens for expressions.
* [debugger/info.c]
Implement "list" command for disassembling.
* [misc/ole2nls.c]
Implement more Danish stuff.
Fri Oct 6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
* [loader/module.c]
Updated self-loading modules to support for new 32 bit
stack frames.
1995-11-05 15:39:02 +01:00
|
|
|
%left '+' '-'
|
|
|
|
%left '*' '/' '%'
|
|
|
|
%left OP_SIGN '!' '~' OP_DEREF /* OP_INC OP_DEC OP_ADDR */
|
2005-11-12 20:10:24 +01:00
|
|
|
%left '.' '[' OP_DRF OP_SCOPE
|
Release 951105
Fri Nov 3 20:08:17 1995 Alexandre Julliard <julliard@sunsite.unc.edu>
* [configure.in]
Attempt to check for -li386 on NetBSD. Please test this.
Mon Oct 30 12:40:32 EST 1995 Jim Peterson <jspeter@birch.ee.vt.edu>
* [*/*]
Eliminated various warnings with either explicit casts or more
accurate variable/parameter declarations (e.g. INT instead of short
or WORD).
Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
macros.
* [controls/edit.c] [windows/defdlg.c]
Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
DEFDLG_FindDefButton to avoid warnings.
* [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
[windows/message.c] [windows/nonclient.c]
Converted MAKEPOINT macro call to manual conversion.
* [include/windows.h]
For WINELIB32, structures POINT, SIZE, and RECT have LONG members
instead of INT. This also invalidates the macro MAKEPOINT(), which
is not supported in Win32. Also defined the POINTS structure (SHORT
members) and the MAKEPOINTS macro.
* [misc/commdlg.c]
Changed a lot of 'strcpy' calls to 'strncpy' calls. I'm desperate to
find this memory bug, and this should be done anyway.
* [controls/edit.c]
Well, the alteration mentioned above didn't do it, but #ifdef'ing out
a few lines in EDIT_ClearText did. This leads to bugs, but for now,
it's better than bizzare memory troubles.
* [toolkit/miscstubs.c]
Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
and RELAY32_GetEntryPoint(). These are the most popular warnings, and
their current implementation seems fine.
Sat Oct 28 09:39:18 1995 Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
* [objects/cursoricon.c]
Fix for "broken" X servers that invert masked cursor colors.
Fri Oct 27 19:27:21 1995 Alex Korobka <alex@phm6.pharm.sunysb.edu>
* [windows/dialog.c] [windows/nonclient.c]
Remove unnecessary items from the system menu.
Thu Oct 26 05:03:03 MET 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
* [objects/color.c] [objects/palette.c]
Make GetNearestColor return a RGB value instead of a pixel value.
Wed Oct 25 23:33:39 1995 Martin von Loewis <loewis@informatik.hu-berlin.de>
* [controls/desktop.c][controls/menu.c][include/menu.h]
Changed WORD parameters to UINT parameters.
* [include/wintypes.h]
Made UINT 32bit for WINELIB.
* [loader/main.c]
Disabled RELAY32_Init and MODULE_Init for WINELIB.
* [misc/main.c]
Assume CPU386 for WINELIB.
* [rc/winerc]
add_popup: set MF_POPUP flag on menu item.
* [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
Add resource demo hello3 for WINELIB.
New file README.resources.
* [toolkit/miscstubs.c]
Add a case for 17.
Tue Oct 17 15:13:10 IST 1995 Itai Nahshon <nahshon@vnet.ibm.com>
* [loader/module.c]
Do not append .exe if the file name already has an extension.
* [misc/profile.c]
Avoid creating a file with a junk name if a .ini file does not
exist.
* [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
Added a lot of dummy stubs for Windows Hebrew version.
Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
* [controls/button.c]
Fix for buttons with no label.
* [controls/combo.c][controls/listbox.c]
Fixes for scrollbar positioning. Now disappears correctly
for short lists.
* [controls/edit.c]
Handle memory allocation differently when building as library.
* [controls/static]
Don't destroy old icon before drawing new icon. (Fixes landscape/
portrait toggle icon in print dialog.)
* [if1632/gdi.spec]
New functions SetMetaFileBits and GetMetaFileBits
* [include/sysmetrics.h] [windows/sysmetrics.c]
Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
* [include/windows.h]
META_EXTTEXTOUT, not META_SETTEXTOUT
define GetCurrentTime as GetTickCount (for wine library)
* [loader/main.c]
Don't initialize built-in modules in wine library
* [memory/local.c]
LocalReAlloc was defined incorrectly. Swap flags and size arguments.
* [misc/main.c]
Always report CPUTYPE=4 to wine library.
* [objects/dib.c]
RLE8 images were missing top line when decompressed.
* [objects/metafile.c]
SetMetaFileBits and GetMetaFileBits implemented. Works when called
from winhelp. More testing needed. Various memory leaks plugged.
Various other bug fixes. New metafile operations added in
PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
SetMapperFlags, RealizePalette, ExtTextOut, Escape. Testing needed.
* [toolkit/heap.c]
LocalUnLock changed to LocalUnlock
Sun Oct 15 21:55:33 1995 Anand Kumria <akumria@ozemail.com.au>
* [misc/winsock.c]
Return the correct error number, for host lookup operations.
Also, correct the problem with send_message.
Fri Oct 13 19:04:35 1995 Morten Welinder <terra@diku.dk>
* [Makefile.in]
Using nm's built-in sorting.
* [*/*.c]
Use xmalloc for malloc and xrealloc for realloc in all ungarded
cases.
* [debugger/dbg.y]
Handle C-like expressions. Clean-up.
* [debugger/debug.l]
Lots of new tokens for expressions.
* [debugger/info.c]
Implement "list" command for disassembling.
* [misc/ole2nls.c]
Implement more Danish stuff.
Fri Oct 6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
* [loader/module.c]
Updated self-loading modules to support for new 32 bit
stack frames.
1995-11-05 15:39:02 +01:00
|
|
|
%nonassoc ':'
|
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
%type <expression> expr lvalue
|
|
|
|
%type <lvalue> expr_lvalue lvalue_addr
|
|
|
|
%type <integer> expr_rvalue
|
2006-03-25 10:12:45 +01:00
|
|
|
%type <string> pathname identifier cpp_identifier
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
%type <listing> list_arg
|
2004-06-04 02:59:16 +02:00
|
|
|
%type <type> type_expr
|
1993-09-29 13:21:49 +01:00
|
|
|
|
|
|
|
%%
|
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
input:
|
|
|
|
line
|
2002-02-04 19:40:40 +01:00
|
|
|
| input line
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
line:
|
|
|
|
command tEOL { expr_free_all(); }
|
1996-03-14 19:08:34 +01:00
|
|
|
| tEOL
|
2002-07-30 01:50:59 +02:00
|
|
|
| tEOF { return 1; }
|
2004-06-04 02:59:16 +02:00
|
|
|
| error tEOL { yyerrok; expr_free_all(); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
|
|
|
command:
|
2004-06-04 02:59:16 +02:00
|
|
|
tQUIT { return 1; }
|
|
|
|
| tHELP { print_help(); }
|
|
|
|
| tHELP tINFO { info_help(); }
|
|
|
|
| tPASS { dbg_wait_next_exception(DBG_EXCEPTION_NOT_HANDLED, 0, 0); }
|
|
|
|
| tCONT { dbg_wait_next_exception(DBG_CONTINUE, 1, dbg_exec_cont); }
|
|
|
|
| tCONT tNUM { dbg_wait_next_exception(DBG_CONTINUE, $2, dbg_exec_cont); }
|
|
|
|
| tSTEP { dbg_wait_next_exception(DBG_CONTINUE, 1, dbg_exec_step_into_line); }
|
|
|
|
| tSTEP tNUM { dbg_wait_next_exception(DBG_CONTINUE, $2, dbg_exec_step_into_line); }
|
|
|
|
| tNEXT { dbg_wait_next_exception(DBG_CONTINUE, 1, dbg_exec_step_over_line); }
|
|
|
|
| tNEXT tNUM { dbg_wait_next_exception(DBG_CONTINUE, $2, dbg_exec_step_over_line); }
|
|
|
|
| tSTEPI { dbg_wait_next_exception(DBG_CONTINUE, 1, dbg_exec_step_into_insn); }
|
|
|
|
| tSTEPI tNUM { dbg_wait_next_exception(DBG_CONTINUE, $2, dbg_exec_step_into_insn); }
|
|
|
|
| tNEXTI { dbg_wait_next_exception(DBG_CONTINUE, 1, dbg_exec_step_over_insn); }
|
|
|
|
| tNEXTI tNUM { dbg_wait_next_exception(DBG_CONTINUE, $2, dbg_exec_step_over_insn); }
|
|
|
|
| tFINISH { dbg_wait_next_exception(DBG_CONTINUE, 0, dbg_exec_finish); }
|
|
|
|
| tABORT { abort(); }
|
2005-11-18 13:33:03 +01:00
|
|
|
| tBACKTRACE { stack_backtrace(dbg_curr_tid); }
|
|
|
|
| tBACKTRACE tNUM { stack_backtrace($2); }
|
|
|
|
| tBACKTRACE tALL { stack_backtrace(-1); }
|
|
|
|
| tUP { stack_set_frame(dbg_curr_thread->curr_frame + 1); }
|
|
|
|
| tUP tNUM { stack_set_frame(dbg_curr_thread->curr_frame + $2); }
|
|
|
|
| tDOWN { stack_set_frame(dbg_curr_thread->curr_frame - 1); }
|
|
|
|
| tDOWN tNUM { stack_set_frame(dbg_curr_thread->curr_frame - $2); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tFRAME tNUM { stack_set_frame($2); }
|
|
|
|
| tSHOW tDIR { source_show_path(); }
|
|
|
|
| tDIR pathname { source_add_path($2); }
|
2008-04-30 21:26:57 +02:00
|
|
|
| tDIR { source_nuke_path(dbg_curr_process); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tCOND tNUM { break_add_condition($2, NULL); }
|
|
|
|
| tCOND tNUM expr { break_add_condition($2, $3); }
|
|
|
|
| tSOURCE pathname { parser($2); }
|
|
|
|
| tSYMBOLFILE pathname { symbol_read_symtable($2, 0); }
|
|
|
|
| tSYMBOLFILE pathname expr_rvalue { symbol_read_symtable($2, $3); }
|
2005-11-17 13:53:41 +01:00
|
|
|
| tWHATIS expr_lvalue { dbg_printf("type = "); types_print_type(&$2.type, FALSE); dbg_printf("\n"); }
|
2019-07-02 18:01:13 +02:00
|
|
|
| tATTACH tNUM { dbg_attach_debuggee($2); dbg_active_wait_for_first_exception(); }
|
2006-02-27 21:50:43 +01:00
|
|
|
| tDETACH { dbg_curr_process->process_io->close_process(dbg_curr_process, FALSE); }
|
2008-10-25 09:12:30 +02:00
|
|
|
| tKILL { dbg_curr_process->process_io->close_process(dbg_curr_process, TRUE); }
|
2005-05-23 18:22:44 +02:00
|
|
|
| tMINIDUMP pathname { minidump_write($2, (dbg_curr_thread && dbg_curr_thread->in_exception) ? &dbg_curr_thread->excpt_record : NULL);}
|
2006-02-27 21:50:36 +01:00
|
|
|
| tECHO tSTRING { dbg_printf("%s\n", $2); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| run_command
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
| list_command
|
1997-03-05 09:22:35 +01:00
|
|
|
| disassemble_command
|
1996-03-14 19:08:34 +01:00
|
|
|
| set_command
|
|
|
|
| x_command
|
2004-06-04 02:59:16 +02:00
|
|
|
| print_command
|
|
|
|
| break_command
|
2000-03-15 20:57:20 +01:00
|
|
|
| watch_command
|
2004-06-04 02:59:16 +02:00
|
|
|
| display_command
|
1996-03-14 19:08:34 +01:00
|
|
|
| info_command
|
2003-12-15 20:53:08 +01:00
|
|
|
| maintenance_command
|
2000-06-18 21:30:24 +02:00
|
|
|
| noprocess_state
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
pathname:
|
|
|
|
identifier { $$ = $1; }
|
2005-03-14 11:48:29 +01:00
|
|
|
| tSTRING { $$ = $1; }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tPATH { $$ = $1; }
|
2003-10-14 22:25:16 +02:00
|
|
|
;
|
|
|
|
|
2006-03-25 10:12:45 +01:00
|
|
|
cpp_identifier:
|
2004-06-04 02:59:16 +02:00
|
|
|
tIDENTIFIER { $$ = $1; }
|
2005-11-12 20:10:24 +01:00
|
|
|
| identifier OP_SCOPE tIDENTIFIER { $$ = lexeme_alloc_size(strlen($1) + 2 + strlen($3) + 1);
|
|
|
|
sprintf($$, "%s::%s", $1, $3); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
|
2006-03-25 10:12:45 +01:00
|
|
|
identifier:
|
|
|
|
cpp_identifier { $$ = $1; }
|
|
|
|
| tIDENTIFIER '!' cpp_identifier { $$ = lexeme_alloc_size(strlen($1) + 1 + strlen($3) + 1);
|
|
|
|
sprintf($$, "%s!%s", $1, $3); }
|
|
|
|
;
|
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
list_arg:
|
|
|
|
tNUM { $$.FileName = NULL; $$.LineNumber = $1; }
|
|
|
|
| pathname ':' tNUM { $$.FileName = $1; $$.LineNumber = $3; }
|
|
|
|
| identifier { symbol_get_line(NULL, $1, &$$); }
|
2009-08-22 07:57:37 +02:00
|
|
|
| pathname ':' identifier { symbol_get_line($1, $3, &$$); }
|
2009-08-26 20:18:07 +02:00
|
|
|
| '*' expr_lvalue { DWORD disp; ADDRESS64 addr; $$.SizeOfStruct = sizeof($$);
|
|
|
|
types_extract_as_address(&$2, &addr);
|
2012-05-29 19:14:31 +02:00
|
|
|
SymGetLineFromAddr64(dbg_curr_process->handle, (ULONG_PTR)memory_to_linear_addr(& addr), &disp, & $$); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
run_command:
|
|
|
|
tRUN { dbg_run_debuggee(NULL); }
|
|
|
|
| tRUN tSTRING { dbg_run_debuggee($2); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1997-03-05 09:22:35 +01:00
|
|
|
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
list_command:
|
2004-06-04 02:59:16 +02:00
|
|
|
tLIST { source_list(NULL, NULL, 10); }
|
|
|
|
| tLIST '-' { source_list(NULL, NULL, -10); }
|
|
|
|
| tLIST list_arg { source_list(& $2, NULL, 10); }
|
|
|
|
| tLIST ',' list_arg { source_list(NULL, & $3, -10); }
|
|
|
|
| tLIST list_arg ',' list_arg { source_list(& $2, & $4, 0); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
disassemble_command:
|
|
|
|
tDISASSEMBLE { memory_disassemble(NULL, NULL, 10); }
|
|
|
|
| tDISASSEMBLE expr_lvalue { memory_disassemble(&$2, NULL, 10); }
|
|
|
|
| tDISASSEMBLE expr_lvalue ',' expr_lvalue { memory_disassemble(&$2, &$4, 0); }
|
|
|
|
;
|
|
|
|
|
|
|
|
set_command:
|
2012-04-04 22:30:38 +02:00
|
|
|
tSET lvalue_addr '=' expr_lvalue { types_store_value(&$2, &$4); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tSET '+' tIDENTIFIER { info_wine_dbg_channel(TRUE, NULL, $3); }
|
2009-08-17 07:14:48 +02:00
|
|
|
| tSET '+' tALL { info_wine_dbg_channel(TRUE, NULL, "all"); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tSET '-' tIDENTIFIER { info_wine_dbg_channel(FALSE, NULL, $3); }
|
2009-08-17 07:14:48 +02:00
|
|
|
| tSET '-' tALL { info_wine_dbg_channel(FALSE, NULL, "all"); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tSET tIDENTIFIER '+' tIDENTIFIER { info_wine_dbg_channel(TRUE, $2, $4); }
|
2009-08-17 07:14:48 +02:00
|
|
|
| tSET tIDENTIFIER '+' tALL { info_wine_dbg_channel(TRUE, $2, "all"); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tSET tIDENTIFIER '-' tIDENTIFIER { info_wine_dbg_channel(FALSE, $2, $4); }
|
2009-08-17 07:14:48 +02:00
|
|
|
| tSET tIDENTIFIER '-' tALL { info_wine_dbg_channel(FALSE, $2, "all"); }
|
2008-11-10 15:03:02 +01:00
|
|
|
| tSET '!' tIDENTIFIER tIDENTIFIER { dbg_set_option($3, $4); }
|
|
|
|
| tSET '!' tIDENTIFIER { dbg_set_option($3, NULL); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1993-09-29 13:21:49 +01:00
|
|
|
|
|
|
|
x_command:
|
2005-03-03 15:10:17 +01:00
|
|
|
tEXAM expr_lvalue { memory_examine(&$2, 1, 'x'); }
|
|
|
|
| tEXAM tFORMAT expr_lvalue { memory_examine(&$3, $2 >> 8, $2 & 0xff); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
|
|
|
print_command:
|
2004-06-04 02:59:16 +02:00
|
|
|
tPRINT expr_lvalue { print_value(&$2, 0, 0); }
|
|
|
|
| tPRINT tFORMAT expr_lvalue { if (($2 >> 8) == 1) print_value(&$3, $2 & 0xff, 0); else dbg_printf("Count is meaningless in print command\n"); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
break_command:
|
2006-01-27 16:17:22 +01:00
|
|
|
tBREAK '*' expr_lvalue { break_add_break_from_lvalue(&$3, TRUE); }
|
|
|
|
| tBREAK identifier { break_add_break_from_id($2, -1, TRUE); }
|
2011-02-28 14:04:20 +01:00
|
|
|
| tBREAK pathname ':' tNUM { break_add_break_from_lineno($2, $4, TRUE); }
|
|
|
|
| tBREAK tNUM { break_add_break_from_lineno(NULL, $2, TRUE); }
|
|
|
|
| tBREAK { break_add_break_from_lineno(NULL, -1, TRUE); }
|
2006-01-27 16:17:22 +01:00
|
|
|
| tHBREAK '*' expr_lvalue { break_add_break_from_lvalue(&$3, FALSE); }
|
|
|
|
| tHBREAK identifier { break_add_break_from_id($2, -1, FALSE); }
|
2011-02-28 14:04:20 +01:00
|
|
|
| tHBREAK pathname ':' tNUM { break_add_break_from_lineno($2, $4, FALSE); }
|
|
|
|
| tHBREAK tNUM { break_add_break_from_lineno(NULL, $2, FALSE); }
|
|
|
|
| tHBREAK { break_add_break_from_lineno(NULL, -1, FALSE); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tENABLE tNUM { break_enable_xpoint($2, TRUE); }
|
|
|
|
| tENABLE tBREAK tNUM { break_enable_xpoint($3, TRUE); }
|
|
|
|
| tDISABLE tNUM { break_enable_xpoint($2, FALSE); }
|
|
|
|
| tDISABLE tBREAK tNUM { break_enable_xpoint($3, FALSE); }
|
|
|
|
| tDELETE tNUM { break_delete_xpoint($2); }
|
|
|
|
| tDELETE tBREAK tNUM { break_delete_xpoint($3); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2000-03-15 20:57:20 +01:00
|
|
|
watch_command:
|
2010-12-05 17:35:55 +01:00
|
|
|
tWATCH '*' expr_lvalue { break_add_watch_from_lvalue(&$3, TRUE); }
|
|
|
|
| tWATCH identifier { break_add_watch_from_id($2, TRUE); }
|
|
|
|
| tRWATCH '*' expr_lvalue { break_add_watch_from_lvalue(&$3, FALSE); }
|
|
|
|
| tRWATCH identifier { break_add_watch_from_id($2, FALSE); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2010-12-05 17:35:55 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
display_command:
|
2004-08-23 00:35:36 +02:00
|
|
|
tDISPLAY { display_print(); }
|
2004-09-28 04:13:27 +02:00
|
|
|
| tDISPLAY expr { display_add($2, 1, 0); }
|
|
|
|
| tDISPLAY tFORMAT expr { display_add($3, $2 >> 8, $2 & 0xff); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tENABLE tDISPLAY tNUM { display_enable($3, TRUE); }
|
|
|
|
| tDISABLE tDISPLAY tNUM { display_enable($3, FALSE); }
|
|
|
|
| tDELETE tDISPLAY tNUM { display_delete($3); }
|
|
|
|
| tDELETE tDISPLAY { display_delete(-1); }
|
|
|
|
| tUNDISPLAY tNUM { display_delete($2); }
|
|
|
|
| tUNDISPLAY { display_delete(-1); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
2000-06-18 21:30:24 +02:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
info_command:
|
|
|
|
tINFO tBREAK { break_info(); }
|
|
|
|
| tINFO tSHARE { info_win32_module(0); }
|
|
|
|
| tINFO tSHARE expr_rvalue { info_win32_module($3); }
|
2018-06-13 00:53:16 +02:00
|
|
|
| tINFO tREGS { dbg_curr_process->be_cpu->print_context(dbg_curr_thread->handle, &dbg_context, 0); }
|
|
|
|
| tINFO tALLREGS { dbg_curr_process->be_cpu->print_context(dbg_curr_thread->handle, &dbg_context, 1); }
|
2005-03-03 15:10:17 +01:00
|
|
|
| tINFO tSEGMENTS expr_rvalue { info_win32_segments($3 >> 3, 1); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tINFO tSEGMENTS { info_win32_segments(0, -1); }
|
2010-05-25 00:48:36 +02:00
|
|
|
| tINFO tSTACK tNUM { stack_info($3); }
|
|
|
|
| tINFO tSTACK { stack_info(-1); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tINFO tSYMBOL tSTRING { symbol_info($3); }
|
|
|
|
| tINFO tLOCAL { symbol_info_locals(); }
|
|
|
|
| tINFO tDISPLAY { display_info(); }
|
|
|
|
| tINFO tCLASS { info_win32_class(NULL, NULL); }
|
|
|
|
| tINFO tCLASS tSTRING { info_win32_class(NULL, $3); }
|
|
|
|
| tINFO tWND { info_win32_window(NULL, FALSE); }
|
|
|
|
| tINFO tWND expr_rvalue { info_win32_window((HWND)$3, FALSE); }
|
|
|
|
| tINFO '*' tWND { info_win32_window(NULL, TRUE); }
|
|
|
|
| tINFO '*' tWND expr_rvalue { info_win32_window((HWND)$4, TRUE); }
|
|
|
|
| tINFO tPROCESS { info_win32_processes(); }
|
|
|
|
| tINFO tTHREAD { info_win32_threads(); }
|
2010-11-21 22:19:34 +01:00
|
|
|
| tINFO tFRAME { info_win32_frame_exceptions(dbg_curr_tid); }
|
|
|
|
| tINFO tFRAME expr_rvalue { info_win32_frame_exceptions($3); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tINFO tMAPS { info_win32_virtual(dbg_curr_pid); }
|
|
|
|
| tINFO tMAPS expr_rvalue { info_win32_virtual($3); }
|
2010-11-21 22:19:40 +01:00
|
|
|
| tINFO tEXCEPTION { info_win32_exception(); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2003-12-15 20:53:08 +01:00
|
|
|
maintenance_command:
|
2004-06-04 02:59:16 +02:00
|
|
|
tMAINTENANCE tTYPE { print_types(); }
|
2007-01-02 14:23:48 +01:00
|
|
|
| tMAINTENANCE tMODULE tSTRING { tgt_module_load($3, FALSE); }
|
|
|
|
| tMAINTENANCE '*' tMODULE tSTRING { tgt_module_load($4, TRUE); }
|
2003-12-15 20:53:08 +01:00
|
|
|
;
|
|
|
|
|
2000-06-18 21:30:24 +02:00
|
|
|
noprocess_state:
|
2004-06-23 02:10:02 +02:00
|
|
|
tNOPROCESS {} /* <CR> shall not barf anything */
|
2005-11-18 13:33:03 +01:00
|
|
|
| tNOPROCESS tBACKTRACE tALL { stack_backtrace(-1); } /* can backtrace all threads with no attached process */
|
2004-06-23 02:10:02 +02:00
|
|
|
| tNOPROCESS tSTRING { dbg_printf("No process loaded, cannot execute '%s'\n", $2); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
Release 970120
Sun Jan 19 11:46:48 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [loader/module.c]
Fixed LoadModule() to always call the DLL initialization code.
* [windows/event.c]
Moved all the keyboard stuff to windows/keyboard.c
* [tools/build.c]
Fixed Win32 register functions.
Sat Jan 18 22:24:41 1997 David Makepeace <D.Makepeace@mailbox.uq.oz.au>
* [tools/makedep.c]
Fixed bug which causes SEGV on Solaris x86.
Fri Jan 17 18:32:27 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c]
Implemented WM_UNDO, WM_CONTEXTMENU (temporary using WM_RBUTTONUP),
WM_COMMAND, WM_INITPOPUPMENU, WM_SYSKEYDOWN.
Fixed EM_SETSEL and some minor bugs (features).
Hence: fully functional undo and a win95 menu with the right mouse
button.
* [include/resources.h] [resources/TODO] [resources/sysres_??.rc]
Added a context menu for the edit control.
Translations, please ...
Fri Jan 17 08:29:52 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Move EVENT_ToAscii to windows/keyboard.c (where name ToAscii)
Fixed Keypad keys 0-9 and . in EVENT_event_to_vkey.
Added 3-state handling of toggle keys (CapsLock, NumLock) in order
to make them work with any X server.
Toggle keys now generate WM_KEYDOWN and WM_KEYUP on each pressing.
* [include/keyboard.h]
Totally replaced the file (formerly containing the vkcase definitions)
by the declaration of 'extern' variables contained by event.c and used
by keyboard.c
* [windows/keyboard.c]
Started to rewrite VkKeyScan and MapVirtualKey, to make them use the
table keyc2vkey or X functions only.
ToAscii : added keypad 0-9 and . special case.
Changed toggle keys active mask from 0x80 to 0x1.
* [misc/keyboard.c]
File deleted. Contents moved to windows/keyboard.c.
* [misc/main.c]
Added putenv XKB_DISABLE to disable XKB extension (which, when
present, causes AltGr to change keyboard group instead of being a
modifier).
Tue Jan 14 22:56:43 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [windows/event.c]
Do not assume NumLockMask is Mod2Mask, but compute it by scanning
output of XGetModifierMapping for XK_Num_Lock.
Tue Jan 14 15:49:49 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [loader/pe_*.c] [include/peexe.h] [include/resource32.h]
[debugger/*.c]
General clean up.
Changed defines/structures to match Windows NT SDK.
* [loader/main.c]
Don't crash on empty command-line.
* [windows/winpos.c]
winpos.c made win32 clean.
* [misc/ntdll.c]
Some string conversion additions.
* [files/file.c]
GetFileAttributes/GetTempFileName fixed.
* [misc/ver.c]
VerInstallFile implemented.
Mon Jan 13 15:03:11 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [tools/build.c]: Use PREFIX also in stabs messages.
Mon Jan 13 10:40:33 1997 John Harvey <john@division.co.uk>
* [graphics/win16drv/*] [include/win16drv.h]
Many fixes and some new features.
* [graphics/x11drv/font.c] [graphics/x11drv/init.c]
[include/x11drv.h] [objects/font.c]
GetTextMetrics() moved to graphics driver.
* [if1632/gdi.spec] [misc/fontengine.c] [misc/Makefile.in]
New dummy EngineEnumerateFont, EngineRealizeFont functions.
* [include/windows.h]
TEXTFORM16 and FONTINFO16 structure definitions moved here from
include/win16drv.h
1997-01-20 20:43:45 +01:00
|
|
|
|
|
|
|
type_expr:
|
2004-08-23 00:35:36 +02:00
|
|
|
tCHAR { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_char; }
|
|
|
|
| tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_int; }
|
|
|
|
| tLONG tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_long_int; }
|
|
|
|
| tLONG { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_long_int; }
|
|
|
|
| tUNSIGNED tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_int; }
|
|
|
|
| tUNSIGNED { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_int; }
|
|
|
|
| tLONG tUNSIGNED tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_long_int; }
|
|
|
|
| tLONG tUNSIGNED { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_long_int; }
|
|
|
|
| tSHORT tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_short_int; }
|
|
|
|
| tSHORT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_short_int; }
|
|
|
|
| tSHORT tUNSIGNED tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_short_int; }
|
|
|
|
| tSHORT tUNSIGNED { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_short_int; }
|
|
|
|
| tSIGNED tCHAR { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_char_int; }
|
|
|
|
| tUNSIGNED tCHAR { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_char_int; }
|
|
|
|
| tLONG tLONG tUNSIGNED tINT{ $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_longlong_int; }
|
|
|
|
| tLONG tLONG tUNSIGNED { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_unsigned_longlong_int; }
|
|
|
|
| tLONG tLONG tINT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_longlong_int; }
|
|
|
|
| tLONG tLONG { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_signed_longlong_int; }
|
|
|
|
| tFLOAT { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_short_real; }
|
|
|
|
| tDOUBLE { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_real; }
|
|
|
|
| tLONG tDOUBLE { $$.type = type_expr_type_id; $$.deref_count = 0; $$.u.type.module = 0; $$.u.type.id = dbg_itype_long_real; }
|
2004-06-04 02:59:16 +02:00
|
|
|
| type_expr '*' { $$ = $1; $$.deref_count++; }
|
2005-05-23 11:51:44 +02:00
|
|
|
| tCLASS identifier { $$.type = type_expr_udt_class; $$.deref_count = 0; $$.u.name = $2; }
|
|
|
|
| tSTRUCT identifier { $$.type = type_expr_udt_struct; $$.deref_count = 0; $$.u.name = $2; }
|
|
|
|
| tUNION identifier { $$.type = type_expr_udt_union; $$.deref_count = 0; $$.u.name = $2; }
|
|
|
|
| tENUM identifier { $$.type = type_expr_enumeration; $$.deref_count = 0; $$.u.name = $2; }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
Release 970120
Sun Jan 19 11:46:48 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [loader/module.c]
Fixed LoadModule() to always call the DLL initialization code.
* [windows/event.c]
Moved all the keyboard stuff to windows/keyboard.c
* [tools/build.c]
Fixed Win32 register functions.
Sat Jan 18 22:24:41 1997 David Makepeace <D.Makepeace@mailbox.uq.oz.au>
* [tools/makedep.c]
Fixed bug which causes SEGV on Solaris x86.
Fri Jan 17 18:32:27 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c]
Implemented WM_UNDO, WM_CONTEXTMENU (temporary using WM_RBUTTONUP),
WM_COMMAND, WM_INITPOPUPMENU, WM_SYSKEYDOWN.
Fixed EM_SETSEL and some minor bugs (features).
Hence: fully functional undo and a win95 menu with the right mouse
button.
* [include/resources.h] [resources/TODO] [resources/sysres_??.rc]
Added a context menu for the edit control.
Translations, please ...
Fri Jan 17 08:29:52 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Move EVENT_ToAscii to windows/keyboard.c (where name ToAscii)
Fixed Keypad keys 0-9 and . in EVENT_event_to_vkey.
Added 3-state handling of toggle keys (CapsLock, NumLock) in order
to make them work with any X server.
Toggle keys now generate WM_KEYDOWN and WM_KEYUP on each pressing.
* [include/keyboard.h]
Totally replaced the file (formerly containing the vkcase definitions)
by the declaration of 'extern' variables contained by event.c and used
by keyboard.c
* [windows/keyboard.c]
Started to rewrite VkKeyScan and MapVirtualKey, to make them use the
table keyc2vkey or X functions only.
ToAscii : added keypad 0-9 and . special case.
Changed toggle keys active mask from 0x80 to 0x1.
* [misc/keyboard.c]
File deleted. Contents moved to windows/keyboard.c.
* [misc/main.c]
Added putenv XKB_DISABLE to disable XKB extension (which, when
present, causes AltGr to change keyboard group instead of being a
modifier).
Tue Jan 14 22:56:43 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [windows/event.c]
Do not assume NumLockMask is Mod2Mask, but compute it by scanning
output of XGetModifierMapping for XK_Num_Lock.
Tue Jan 14 15:49:49 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [loader/pe_*.c] [include/peexe.h] [include/resource32.h]
[debugger/*.c]
General clean up.
Changed defines/structures to match Windows NT SDK.
* [loader/main.c]
Don't crash on empty command-line.
* [windows/winpos.c]
winpos.c made win32 clean.
* [misc/ntdll.c]
Some string conversion additions.
* [files/file.c]
GetFileAttributes/GetTempFileName fixed.
* [misc/ver.c]
VerInstallFile implemented.
Mon Jan 13 15:03:11 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [tools/build.c]: Use PREFIX also in stabs messages.
Mon Jan 13 10:40:33 1997 John Harvey <john@division.co.uk>
* [graphics/win16drv/*] [include/win16drv.h]
Many fixes and some new features.
* [graphics/x11drv/font.c] [graphics/x11drv/init.c]
[include/x11drv.h] [objects/font.c]
GetTextMetrics() moved to graphics driver.
* [if1632/gdi.spec] [misc/fontengine.c] [misc/Makefile.in]
New dummy EngineEnumerateFont, EngineRealizeFont functions.
* [include/windows.h]
TEXTFORM16 and FONTINFO16 structure definitions moved here from
include/win16drv.h
1997-01-20 20:43:45 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
expr_lvalue:
|
|
|
|
expr { $$ = expr_eval($1); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
1996-03-14 19:08:34 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
expr_rvalue:
|
|
|
|
expr_lvalue { $$ = types_extract_as_integer(&$1); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
2000-04-30 14:21:15 +02:00
|
|
|
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
/*
|
|
|
|
* The expr rule builds an expression tree. When we are done, we call
|
|
|
|
* EvalExpr to evaluate the value of the expression. The advantage of
|
|
|
|
* the two-step approach is that it is possible to save expressions for
|
|
|
|
* use in 'display' commands, and in conditional watchpoints.
|
|
|
|
*/
|
1996-03-14 19:08:34 +01:00
|
|
|
expr:
|
2004-06-04 02:59:16 +02:00
|
|
|
tNUM { $$ = expr_alloc_sconstant($1); }
|
|
|
|
| tSTRING { $$ = expr_alloc_string($1); }
|
|
|
|
| tINTVAR { $$ = expr_alloc_internal_var($1); }
|
|
|
|
| identifier { $$ = expr_alloc_symbol($1); }
|
|
|
|
| expr OP_DRF tIDENTIFIER { $$ = expr_alloc_pstruct($1, $3); }
|
|
|
|
| expr '.' tIDENTIFIER { $$ = expr_alloc_struct($1, $3); }
|
|
|
|
| identifier '(' ')' { $$ = expr_alloc_func_call($1, 0); }
|
|
|
|
| identifier '(' expr ')' { $$ = expr_alloc_func_call($1, 1, $3); }
|
|
|
|
| identifier '(' expr ',' expr ')' { $$ = expr_alloc_func_call($1, 2, $3, $5); }
|
|
|
|
| identifier '(' expr ',' expr ',' expr ')' { $$ = expr_alloc_func_call($1, 3, $3, $5, $7); }
|
|
|
|
| identifier '(' expr ',' expr ',' expr ',' expr ')' { $$ = expr_alloc_func_call($1, 4, $3, $5, $7, $9); }
|
|
|
|
| identifier '(' expr ',' expr ',' expr ',' expr ',' expr ')' { $$ = expr_alloc_func_call($1, 5, $3, $5, $7, $9, $11); }
|
|
|
|
| expr '[' expr ']' { $$ = expr_alloc_binary_op(EXP_OP_ARR, $1, $3); }
|
|
|
|
| expr ':' expr { $$ = expr_alloc_binary_op(EXP_OP_SEG, $1, $3); }
|
|
|
|
| expr OP_LOR expr { $$ = expr_alloc_binary_op(EXP_OP_LOR, $1, $3); }
|
|
|
|
| expr OP_LAND expr { $$ = expr_alloc_binary_op(EXP_OP_LAND, $1, $3); }
|
|
|
|
| expr '|' expr { $$ = expr_alloc_binary_op(EXP_OP_OR, $1, $3); }
|
|
|
|
| expr '&' expr { $$ = expr_alloc_binary_op(EXP_OP_AND, $1, $3); }
|
|
|
|
| expr '^' expr { $$ = expr_alloc_binary_op(EXP_OP_XOR, $1, $3); }
|
|
|
|
| expr OP_EQ expr { $$ = expr_alloc_binary_op(EXP_OP_EQ, $1, $3); }
|
|
|
|
| expr '>' expr { $$ = expr_alloc_binary_op(EXP_OP_GT, $1, $3); }
|
|
|
|
| expr '<' expr { $$ = expr_alloc_binary_op(EXP_OP_LT, $1, $3); }
|
|
|
|
| expr OP_GE expr { $$ = expr_alloc_binary_op(EXP_OP_GE, $1, $3); }
|
|
|
|
| expr OP_LE expr { $$ = expr_alloc_binary_op(EXP_OP_LE, $1, $3); }
|
|
|
|
| expr OP_NE expr { $$ = expr_alloc_binary_op(EXP_OP_NE, $1, $3); }
|
|
|
|
| expr OP_SHL expr { $$ = expr_alloc_binary_op(EXP_OP_SHL, $1, $3); }
|
|
|
|
| expr OP_SHR expr { $$ = expr_alloc_binary_op(EXP_OP_SHR, $1, $3); }
|
|
|
|
| expr '+' expr { $$ = expr_alloc_binary_op(EXP_OP_ADD, $1, $3); }
|
|
|
|
| expr '-' expr { $$ = expr_alloc_binary_op(EXP_OP_SUB, $1, $3); }
|
|
|
|
| expr '*' expr { $$ = expr_alloc_binary_op(EXP_OP_MUL, $1, $3); }
|
|
|
|
| expr '/' expr { $$ = expr_alloc_binary_op(EXP_OP_DIV, $1, $3); }
|
|
|
|
| expr '%' expr { $$ = expr_alloc_binary_op(EXP_OP_REM, $1, $3); }
|
|
|
|
| '-' expr %prec OP_SIGN { $$ = expr_alloc_unary_op(EXP_OP_NEG, $2); }
|
1996-03-14 19:08:34 +01:00
|
|
|
| '+' expr %prec OP_SIGN { $$ = $2; }
|
2004-06-04 02:59:16 +02:00
|
|
|
| '!' expr { $$ = expr_alloc_unary_op(EXP_OP_NOT, $2); }
|
|
|
|
| '~' expr { $$ = expr_alloc_unary_op(EXP_OP_LNOT, $2); }
|
1996-03-14 19:08:34 +01:00
|
|
|
| '(' expr ')' { $$ = $2; }
|
2004-06-04 02:59:16 +02:00
|
|
|
| '*' expr %prec OP_DEREF { $$ = expr_alloc_unary_op(EXP_OP_DEREF, $2); }
|
|
|
|
| '&' expr %prec OP_DEREF { $$ = expr_alloc_unary_op(EXP_OP_ADDR, $2); }
|
|
|
|
| '(' type_expr ')' expr %prec OP_DEREF { $$ = expr_alloc_typecast(&$2, $4); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
|
|
|
|
Release 970112
Sat Jan 11 18:17:59 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [controls/menu.c]
Updated to new Win32 types.
* [controls/listbox.c]
Fixed Winfile extended selection bug.
* [files/directory.c]
Changed DIR_SearchPath to return both long and short file names.
* [files/dos_fs.c]
Implemented VFAT ioctl to retrieve the original short filenames
from a VFAT filesystem (Linux only for now).
Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
DOS_GetFullName().
Properly implemented GetShortPathName() and GetFullPathName().
Made all functions re-entrant.
* [files/file.c] [misc/main.c]
Replaced -allowreadonly option by -failreadonly. The default is
now to report success when opening a read-only file for writing.
* [objects/metafile.c]
Fixed bug in DIB bitmaps pointer calculation.
* [scheduler/process.c]
Implemented environment strings and Get/SetStdHandle with process
environment block.
* [tools/build.c]
Rewrote BuildContext32() to avoid instructions that may not be
supported by all assemblers.
Fri Jan 10 17:11:09 1997 David Faure <david.faure@ifhamy.insa-lyon.fr>
* [windows/event.c]
Created table keyc2vkey, which associate a vkey(+extended bit) to
any keycode. Changed EVENT_event_to_vkey to use this table to
return the correct vkey. Changed EVENT_ToAscii to get the keycode
from this table too. Assigned OEM specific vkeys arbitrarily.
Fri Jan 10 09:26:17 1997 John Harvey <john@division.co.uk>
* [misc/winsock.c] [misc/winsoc_async.c]
Fixed svr4 header files.
Changed bzero() to memset().
* [tools/fnt2bdf.c]
Removed bcopy() and used memcpy() instead.
* [debugger/msc.c]
Include string.h instead of strings.h
* [debugger/stabs.c]
Include string.h instead of strings.h.
Define __ELF__ for svr4 systems.
* [loader/signal.c]
Use wait() instead of wait4() which doesnt exist on Unixware.
* [memory/global.c]
Use sysconf() instead of getpagesize() for svr4 systems.
Thu Jan 9 21:07:20 1997 Robert Pouliot <krynos@clic.net>
* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
[tools/Makefile.in] [documentation/wine_os2.txt]
Patches for OS/2 support. Note that it doesn't compile yet.
Tue Jan 7 20:03:53 1997 Eric Youngdale <eric@sub2304.jic.com>
* [debugger/*]
Many more debugger improvements (see debugger/README for details).
Tue Jan 7 15:12:21 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
[graphics/metafiledrv/*]
Moved some device dependent code into the resp. subdirs.
* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
Prototypes added,
DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.
* [objects/region.c]
CreatePolyPolygonRgn32 added.
* [files/dos_fs.c]
QueryDosDevice added.
* [misc/lstr.c]
FormatMessage: broken heap management fixed.
* [scheduler/process.c] [scheduler/thread.c]
Get/SetThreadPriority/PriorityClass added.
Mon Jan 6 21:55:30 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* [misc/keyboard.c]
ToAscii : Use EVENT_ToAscii instead.
* [windows/event.c]
keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
keypad cursor keys.
EVENT_event_to_vkey : New function, to transform a X keycode
into a MSwin vkey + extended bit.
EVENT_ToAscii : New function, to transform a vkey + extended bit
(+ key state table) into ascii char(s), using XLookupString, and
recognizing dead chars.
EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
EVENT_event_to_vkey for keycode to vkey conversion; fixed
previous, context and extended bits.
* [windows/keyboard.c]
Include stddebug.h, to get -debugmsg messages.
GetKeyState : Handle VK_MBUTTON case.
GetKeyboardState, SetKeyboardState : Debugging messages added.
* [windows/message.c]
TranslateMessage : Handle dead chars.
Mon Jan 6 20:10:11 1997 Dominik Strasser <bm424953@muenchen.org>
* [if1632/crtdll.spec] [misc/crtdll.c]
C++ functions new/delete/set_new_handler implemented.
Mon Jan 6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>
* [controls/edit.c] [include/windows.h]
Moved the edit control to 32 bits.
Included new (win95) message definitions in windows.h
Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
Fixed some bugs, introduced a couple of others.
Text buffer is now initially in 32-bit heap.
* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
[if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
[misc/commdlg.c]
Updated to work with 32-bit edit control.
Sat Jan 4 22:07:27 1997 O.Flebbe <O.Flebbe@science-computing.uni-tuebingen.de>
* [loader/pe_image.c]
Use mmap rather then malloc. Better workaround for clean
segments.
1997-01-12 19:32:19 +01:00
|
|
|
/*
|
|
|
|
* The lvalue rule builds an expression tree. This is a limited form
|
|
|
|
* of expression that is suitable to be used as an lvalue.
|
|
|
|
*/
|
2004-06-04 02:59:16 +02:00
|
|
|
lvalue_addr:
|
|
|
|
lvalue { $$ = expr_eval($1); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
|
|
|
|
2005-11-12 20:10:24 +01:00
|
|
|
lvalue:
|
|
|
|
tNUM { $$ = expr_alloc_sconstant($1); }
|
2004-06-04 02:59:16 +02:00
|
|
|
| tINTVAR { $$ = expr_alloc_internal_var($1); }
|
|
|
|
| identifier { $$ = expr_alloc_symbol($1); }
|
|
|
|
| lvalue OP_DRF tIDENTIFIER { $$ = expr_alloc_pstruct($1, $3); }
|
|
|
|
| lvalue '.' tIDENTIFIER { $$ = expr_alloc_struct($1, $3); }
|
|
|
|
| lvalue '[' expr ']' { $$ = expr_alloc_binary_op(EXP_OP_ARR, $1, $3); }
|
|
|
|
| '*' expr { $$ = expr_alloc_unary_op(EXP_OP_FORCE_DEREF, $2); }
|
2002-04-27 23:16:28 +02:00
|
|
|
;
|
2001-08-15 19:40:31 +02:00
|
|
|
|
1993-09-29 13:21:49 +01:00
|
|
|
%%
|
|
|
|
|
2008-02-15 16:19:29 +01:00
|
|
|
static LONG WINAPI wine_dbg_cmd(EXCEPTION_POINTERS *eptr)
|
1999-10-23 18:49:49 +02:00
|
|
|
{
|
2008-02-15 16:19:29 +01:00
|
|
|
switch (eptr->ExceptionRecord->ExceptionCode)
|
2004-06-04 02:59:16 +02:00
|
|
|
{
|
2003-03-04 03:18:20 +01:00
|
|
|
case DEBUG_STATUS_INTERNAL_ERROR:
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("\nWineDbg internal error\n");
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_NO_SYMBOL:
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("\nUndefined symbol\n");
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_DIV_BY_ZERO:
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("\nDivision by zero\n");
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_BAD_TYPE:
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("\nNo type or type mismatch\n");
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_NO_FIELD:
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("\nNo such field in structure or union\n");
|
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_CANT_DEREF:
|
|
|
|
dbg_printf("\nDereference failed (not a pointer, or out of array bounds)\n");
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
case DEBUG_STATUS_ABORT:
|
|
|
|
break;
|
2004-06-04 02:59:16 +02:00
|
|
|
case DEBUG_STATUS_NOT_AN_INTEGER:
|
|
|
|
dbg_printf("\nNeeding an integral value\n");
|
|
|
|
break;
|
2003-03-04 03:18:20 +01:00
|
|
|
case CONTROL_C_EXIT:
|
|
|
|
/* this is generally sent by a ctrl-c when we run winedbg outside of wineconsole */
|
2004-06-04 02:59:16 +02:00
|
|
|
/* stop the debuggee, and continue debugger execution, we will be reentered by the
|
2003-03-04 03:18:20 +01:00
|
|
|
* debug events generated by stopping
|
|
|
|
*/
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_interrupt_debuggee();
|
2003-03-04 03:18:20 +01:00
|
|
|
return EXCEPTION_CONTINUE_EXECUTION;
|
|
|
|
default:
|
2008-02-15 16:19:29 +01:00
|
|
|
dbg_printf("\nException %x\n", eptr->ExceptionRecord->ExceptionCode);
|
2003-03-04 03:18:20 +01:00
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
return EXCEPTION_EXECUTE_HANDLER;
|
1999-10-23 18:49:49 +02:00
|
|
|
}
|
1993-09-29 13:21:49 +01:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
static HANDLE dbg_parser_input;
|
|
|
|
static HANDLE dbg_parser_output;
|
|
|
|
|
2005-11-17 12:04:27 +01:00
|
|
|
int input_fetch_entire_line(const char* pfx, char** line)
|
2004-06-04 02:59:16 +02:00
|
|
|
{
|
2011-05-18 14:09:21 +02:00
|
|
|
char* buffer;
|
2005-11-17 12:04:27 +01:00
|
|
|
char ch;
|
|
|
|
DWORD nread;
|
|
|
|
size_t len, alloc;
|
2011-05-18 14:09:21 +02:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
/* as of today, console handles can be file handles... so better use file APIs rather than
|
|
|
|
* console's
|
|
|
|
*/
|
2005-11-17 12:04:27 +01:00
|
|
|
WriteFile(dbg_parser_output, pfx, strlen(pfx), &nread, NULL);
|
|
|
|
|
2011-05-18 14:09:21 +02:00
|
|
|
buffer = HeapAlloc(GetProcessHeap(), 0, alloc = 16);
|
|
|
|
assert(buffer != NULL);
|
2004-06-04 02:59:16 +02:00
|
|
|
|
|
|
|
len = 0;
|
|
|
|
do
|
|
|
|
{
|
2005-11-17 12:04:27 +01:00
|
|
|
if (!ReadFile(dbg_parser_input, &ch, 1, &nread, NULL) || nread == 0)
|
2011-05-18 14:09:21 +02:00
|
|
|
{
|
|
|
|
HeapFree(GetProcessHeap(), 0, buffer);
|
2007-04-26 14:25:32 +02:00
|
|
|
return -1;
|
2011-05-18 14:09:21 +02:00
|
|
|
}
|
2007-04-26 14:25:32 +02:00
|
|
|
|
2005-11-17 12:04:27 +01:00
|
|
|
if (len + 2 > alloc)
|
2004-06-04 02:59:16 +02:00
|
|
|
{
|
2005-11-17 12:04:27 +01:00
|
|
|
while (len + 2 > alloc) alloc *= 2;
|
2011-05-18 14:09:21 +02:00
|
|
|
buffer = dbg_heap_realloc(buffer, alloc);
|
2004-06-04 02:59:16 +02:00
|
|
|
}
|
2011-05-18 14:09:21 +02:00
|
|
|
buffer[len++] = ch;
|
2004-06-04 02:59:16 +02:00
|
|
|
}
|
2005-11-17 12:04:27 +01:00
|
|
|
while (ch != '\n');
|
2011-05-18 14:09:21 +02:00
|
|
|
buffer[len] = '\0';
|
2004-06-04 02:59:16 +02:00
|
|
|
|
2011-05-18 14:09:21 +02:00
|
|
|
*line = buffer;
|
2005-11-17 12:04:27 +01:00
|
|
|
return len;
|
2004-06-04 02:59:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
int input_read_line(const char* pfx, char* buf, int size)
|
|
|
|
{
|
|
|
|
char* line = NULL;
|
|
|
|
|
2007-04-26 14:25:32 +02:00
|
|
|
int len = input_fetch_entire_line(pfx, &line);
|
|
|
|
if (len < 0) return 0;
|
2011-03-15 22:26:49 +01:00
|
|
|
/* remove trailing \n and \r */
|
|
|
|
while (len > 0 && (line[len - 1] == '\n' || line[len - 1] == '\r')) len--;
|
2004-06-04 02:59:16 +02:00
|
|
|
len = min(size - 1, len);
|
|
|
|
memcpy(buf, line, len);
|
|
|
|
buf[len] = '\0';
|
|
|
|
HeapFree(GetProcessHeap(), 0, line);
|
|
|
|
return 1;
|
2002-07-30 01:50:59 +02:00
|
|
|
}
|
|
|
|
|
1996-04-14 15:21:20 +02:00
|
|
|
/***********************************************************************
|
2005-11-16 12:23:07 +01:00
|
|
|
* parser_handle
|
1996-04-14 15:21:20 +02:00
|
|
|
*
|
2003-02-11 23:05:06 +01:00
|
|
|
* Debugger command line parser
|
1996-10-13 19:45:47 +02:00
|
|
|
*/
|
2005-11-16 12:23:07 +01:00
|
|
|
void parser_handle(HANDLE input)
|
1993-09-29 13:21:49 +01:00
|
|
|
{
|
2002-02-27 02:29:18 +01:00
|
|
|
BOOL ret_ok;
|
2004-06-04 02:59:16 +02:00
|
|
|
HANDLE in_copy = dbg_parser_input;
|
|
|
|
HANDLE out_copy = dbg_parser_output;
|
|
|
|
|
2000-06-18 21:30:24 +02:00
|
|
|
ret_ok = FALSE;
|
2002-07-30 01:50:59 +02:00
|
|
|
|
2005-11-16 12:23:07 +01:00
|
|
|
if (input != INVALID_HANDLE_VALUE)
|
2002-07-30 01:50:59 +02:00
|
|
|
{
|
2005-11-16 12:23:07 +01:00
|
|
|
dbg_parser_output = INVALID_HANDLE_VALUE;
|
|
|
|
dbg_parser_input = input;
|
2002-07-30 01:50:59 +02:00
|
|
|
}
|
|
|
|
else
|
2004-06-04 02:59:16 +02:00
|
|
|
{
|
|
|
|
dbg_parser_output = GetStdHandle(STD_OUTPUT_HANDLE);
|
|
|
|
dbg_parser_input = GetStdHandle(STD_INPUT_HANDLE);
|
|
|
|
}
|
2002-07-30 01:50:59 +02:00
|
|
|
|
|
|
|
do
|
|
|
|
{
|
|
|
|
__TRY
|
2003-02-11 23:05:06 +01:00
|
|
|
{
|
2000-06-25 14:49:13 +02:00
|
|
|
ret_ok = TRUE;
|
2006-09-12 09:04:43 +02:00
|
|
|
dbg_parse();
|
2002-07-30 01:50:59 +02:00
|
|
|
}
|
|
|
|
__EXCEPT(wine_dbg_cmd)
|
|
|
|
{
|
2000-06-18 21:30:24 +02:00
|
|
|
ret_ok = FALSE;
|
|
|
|
}
|
|
|
|
__ENDTRY;
|
2004-06-04 02:59:16 +02:00
|
|
|
lexeme_flush();
|
2000-06-18 21:30:24 +02:00
|
|
|
} while (!ret_ok);
|
2002-07-30 01:50:59 +02:00
|
|
|
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_parser_input = in_copy;
|
|
|
|
dbg_parser_output = out_copy;
|
1997-01-01 18:29:55 +01:00
|
|
|
}
|
|
|
|
|
2009-01-20 09:13:23 +01:00
|
|
|
static void parser(const char* filename)
|
2005-11-16 12:23:07 +01:00
|
|
|
{
|
2009-12-09 18:14:07 +01:00
|
|
|
HANDLE h = CreateFileA(filename, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0L, 0);
|
2005-11-16 12:23:07 +01:00
|
|
|
if (h != INVALID_HANDLE_VALUE)
|
|
|
|
{
|
|
|
|
parser_handle(h);
|
|
|
|
CloseHandle(h);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2009-01-20 09:13:23 +01:00
|
|
|
static int dbg_error(const char* s)
|
1995-01-24 17:21:01 +01:00
|
|
|
{
|
2004-06-04 02:59:16 +02:00
|
|
|
dbg_printf("%s\n", s);
|
|
|
|
return 0;
|
1993-09-29 13:21:49 +01:00
|
|
|
}
|
2006-02-27 21:50:36 +01:00
|
|
|
|
|
|
|
HANDLE parser_generate_command_file(const char* pmt, ...)
|
|
|
|
{
|
|
|
|
HANDLE hFile;
|
|
|
|
char path[MAX_PATH], file[MAX_PATH];
|
|
|
|
DWORD w;
|
|
|
|
const char* p;
|
|
|
|
|
2009-12-09 18:14:07 +01:00
|
|
|
GetTempPathA(sizeof(path), path);
|
|
|
|
GetTempFileNameA(path, "WD", 0, file);
|
2006-02-27 21:50:36 +01:00
|
|
|
hFile = CreateFileA(file, GENERIC_READ|GENERIC_WRITE|DELETE, FILE_SHARE_DELETE,
|
|
|
|
NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_DELETE_ON_CLOSE, 0);
|
|
|
|
if (hFile != INVALID_HANDLE_VALUE)
|
|
|
|
{
|
|
|
|
va_list ap;
|
|
|
|
|
|
|
|
WriteFile(hFile, pmt, strlen(pmt), &w, 0);
|
|
|
|
va_start(ap, pmt);
|
|
|
|
while ((p = va_arg(ap, const char*)) != NULL)
|
|
|
|
{
|
|
|
|
WriteFile(hFile, "\n", 1, &w, 0);
|
|
|
|
WriteFile(hFile, p, strlen(p), &w, 0);
|
|
|
|
}
|
|
|
|
va_end(ap);
|
|
|
|
WriteFile(hFile, "\nquit\n", 6, &w, 0);
|
|
|
|
SetFilePointer(hFile, 0, NULL, FILE_BEGIN);
|
|
|
|
}
|
|
|
|
return hFile;
|
|
|
|
}
|