FT_Module_Get_Flags existed briefly in freetype 2.2.0.rc1 but has now
been replaced by FT_Get_TrueType_Engine_Type. There's no point in
supporting an rc1 release, so this removes support for
FT_Module_Get_Flags and adds support for FT_Get_TrueType_Engine_Type.
It seems like the esp value (which is saved at [ebp-16]) is sometimes
changed inside the catch handler so we end up with a bogus esp
afterwards. To avoid that save it before calling the catch block.
Save in each nested frame a pointer to the original exception record.
Only one refence in thread_data isn't enough when we have multiple
nested frames.
Move handling of nested exceptions completely in the
catch_function_nested_handler(). If a new exception was thrown inside
a catch block destroy the old exception object, if it is a rethrow
re-propagate the previous object.
- read strings from left to right (PathGetDriveNumberW)
- don't access buffers before they are filled (SHGetPathFromIDListW)
- fill buffers & variables on all paths (SHELL_FindExecutable)
- handle error condition (unix_fs)
- don't shoot in the blind for AW APIs (tests/shelllink.c)
Add some missing MAPI prototypes to mapi.h (spotted by winapi_check)
and include it where they are implemented.
Make mapi.h and mapix.h compatible. gcc does not like macros and
prototypes to be redefined so this involved protecting against
multiple definitions.
Fix the MAPISendMail() implementation prototype.
Implement the DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET code path. Along with
a number of corrections and improvements to allow the actual aquiring
of images to succeed.
Let the few existing parts which need the capabiliteis use the WineD3D
capability structure (gl_info). This info structure contains next to
'flags' inidicating certain features also all GL/GLX functions
pointers. Because D3D8 moves over to the wined3d gl_info structure all
the gl prototypes in d3dcore_gl.h were unneeded and removed.
Stream methods called after parent object has been closed correctly
return STG_E_REVERTED.
Stream refcounting fixed. Now can safely call IStorage destructor
before IStream destructor and guarantee file will be closed.