wine
12 years agod3d10: Add support for parsing blend factors to parse_fx10_object().
Henri Verbeet [Wed, 18 Jul 2012 13:52:31 +0000 (15:52 +0200)] 
d3d10: Add support for parsing blend factors to parse_fx10_object().

12 years agosecur32: Recognize some more TLS versions.
Henri Verbeet [Wed, 18 Jul 2012 13:52:30 +0000 (15:52 +0200)] 
secur32: Recognize some more TLS versions.

12 years agoinclude: Add some more SP_PROT_* flags.
Henri Verbeet [Wed, 18 Jul 2012 13:52:29 +0000 (15:52 +0200)] 
include: Add some more SP_PROT_* flags.

12 years agovbscript: Use current locale in to_string.
Jacek Caban [Wed, 18 Jul 2012 11:37:07 +0000 (13:37 +0200)] 
vbscript: Use current locale in to_string.

12 years agovbscript: Fixed locale-related test failures.
Jacek Caban [Wed, 18 Jul 2012 11:36:58 +0000 (13:36 +0200)] 
vbscript: Fixed locale-related test failures.

12 years agoopengl32: Call all OpenGL functions through the current context table and don't link...
Alexandre Julliard [Mon, 16 Jul 2012 22:06:25 +0000 (00:06 +0200)] 
opengl32: Call all OpenGL functions through the current context table and don't link against libGL.

12 years agoopengl32: Redirect standard OpenGL functions through the TEB function table.
Alexandre Julliard [Mon, 16 Jul 2012 21:56:55 +0000 (23:56 +0200)] 
opengl32: Redirect standard OpenGL functions through the TEB function table.

12 years agoopengl32: Call OpenGL extension functions through the TEB function table.
Alexandre Julliard [Wed, 18 Jul 2012 11:07:08 +0000 (13:07 +0200)] 
opengl32: Call OpenGL extension functions through the TEB function table.

12 years agoopengl32: Call standard OpenGL functions through the TEB function table.
Alexandre Julliard [Mon, 16 Jul 2012 21:39:31 +0000 (23:39 +0200)] 
opengl32: Call standard OpenGL functions through the TEB function table.

12 years agowinex11: Fill a function table with the standard OpenGL functions and store it in...
Alexandre Julliard [Mon, 16 Jul 2012 21:26:50 +0000 (23:26 +0200)] 
winex11: Fill a function table with the standard OpenGL functions and store it in the TEB.

12 years agoopengl32: Generate a function table with null OpenGL entry points and store it in...
Alexandre Julliard [Mon, 16 Jul 2012 21:34:45 +0000 (23:34 +0200)] 
opengl32: Generate a function table with null OpenGL entry points and store it in the TEB.

12 years agoopengl32: Generate a header file containing function tables for all OpenGL functions.
Alexandre Julliard [Mon, 16 Jul 2012 21:21:53 +0000 (23:21 +0200)] 
opengl32: Generate a header file containing function tables for all OpenGL functions.

12 years agomsvcrt: Add tmpfile_s implementation.
André Hentschel [Tue, 17 Jul 2012 19:49:09 +0000 (21:49 +0200)] 
msvcrt: Add tmpfile_s implementation.

12 years agouser32/tests: Try to fix a test that frequently fails on Windows.
Alexandre Julliard [Wed, 18 Jul 2012 09:48:43 +0000 (11:48 +0200)] 
user32/tests: Try to fix a test that frequently fails on Windows.

12 years agopo: Update Chinese (Taiwan) translation.
Wei-Lun Chao [Fri, 13 Jul 2012 16:50:27 +0000 (00:50 +0800)] 
po: Update Chinese (Taiwan) translation.

12 years agopo: Update Chinese (Taiwan) translation.
Wei-Lun Chao [Fri, 13 Jul 2012 16:38:53 +0000 (00:38 +0800)] 
po: Update Chinese (Taiwan) translation.

12 years agopo: Update Lithuanian translation.
Aurimas Fišeras [Tue, 17 Jul 2012 17:10:19 +0000 (20:10 +0300)] 
po: Update Lithuanian translation.

12 years agoole32: Give names to 1Ole stream header fields.
Nikolay Sivov [Wed, 18 Jul 2012 06:53:02 +0000 (10:53 +0400)] 
ole32: Give names to 1Ole stream header fields.

12 years agoole32: Remove unsupported interface REFIID from storage stream QueryInterface.
Nikolay Sivov [Wed, 18 Jul 2012 06:18:24 +0000 (10:18 +0400)] 
ole32: Remove unsupported interface REFIID from storage stream QueryInterface.

12 years agoole32: Fix QueryInterface for file-based ILockBytes.
Nikolay Sivov [Wed, 18 Jul 2012 06:05:26 +0000 (10:05 +0400)] 
ole32: Fix QueryInterface for file-based ILockBytes.

12 years agoRelease 1.5.9. wine-1.5.9
Alexandre Julliard [Tue, 17 Jul 2012 18:41:28 +0000 (20:41 +0200)] 
Release 1.5.9.

12 years agomshtml: Avoid returning with an unset URL policy in error cases.
Francois Gouget [Tue, 17 Jul 2012 12:42:18 +0000 (14:42 +0200)] 
mshtml: Avoid returning with an unset URL policy in error cases.

12 years agouser32/tests: Move DlgDirList tests to avoid changing the current directory for other...
Alexandre Julliard [Tue, 17 Jul 2012 12:50:47 +0000 (14:50 +0200)] 
user32/tests: Move DlgDirList tests to avoid changing the current directory for other tests.

12 years agouser32: Minimize and maximize boxes can only appear when WS_SYSMENU is set.
Alex Henrie [Wed, 11 Jul 2012 00:06:06 +0000 (18:06 -0600)] 
user32: Minimize and maximize boxes can only appear when WS_SYSMENU is set.

12 years agousp10: Implement GPOS Coverage-based Chaining Context Glyph Positioning.
Aric Stewart [Tue, 17 Jul 2012 12:21:37 +0000 (07:21 -0500)] 
usp10: Implement GPOS Coverage-based Chaining Context Glyph Positioning.

12 years agoups10: Implement Single Adjustment Positioning: Format 2.
Aric Stewart [Tue, 17 Jul 2012 12:21:05 +0000 (07:21 -0500)] 
ups10: Implement Single Adjustment Positioning: Format 2.

12 years agomshtml: Ignore navigation failures from detached bindings.
Jacek Caban [Tue, 17 Jul 2012 11:17:49 +0000 (13:17 +0200)] 
mshtml: Ignore navigation failures from detached bindings.

12 years agomsvcrt: Add bsearch_s implementation by reusing code and tests from ntdll.
André Hentschel [Mon, 16 Jul 2012 18:36:10 +0000 (20:36 +0200)] 
msvcrt: Add bsearch_s implementation by reusing code and tests from ntdll.

12 years agommcndmgr: Implement IMMCVersionInfo.
Alistair Leslie-Hughes [Fri, 20 Jan 2012 11:29:35 +0000 (22:29 +1100)] 
mmcndmgr: Implement IMMCVersionInfo.

12 years agocomctl32/treeview: Fix the position reported by WM_CONTEXTMENU.
Daniel Jelinski [Fri, 13 Jul 2012 19:27:14 +0000 (21:27 +0200)] 
comctl32/treeview: Fix the position reported by WM_CONTEXTMENU.

12 years agocomctl32/treeview: Send WM_CONTEXTMENU only to parent window.
Daniel Jelinski [Fri, 13 Jul 2012 18:53:09 +0000 (20:53 +0200)] 
comctl32/treeview: Send WM_CONTEXTMENU only to parent window.

12 years agocomctl32/treeview: Inlined TREEVIEW_RButtonUp.
Daniel Jelinski [Fri, 13 Jul 2012 18:47:45 +0000 (20:47 +0200)] 
comctl32/treeview: Inlined TREEVIEW_RButtonUp.

12 years agocomctl32/treeview: Send WM_CONTEXTMENU everywhere, not just over items.
Daniel Jelinski [Fri, 13 Jul 2012 18:42:33 +0000 (20:42 +0200)] 
comctl32/treeview: Send WM_CONTEXTMENU everywhere, not just over items.

12 years agocomctl32/treeview: Fix NM_RCLICK behavior.
Daniel Jelinski [Fri, 13 Jul 2012 18:11:38 +0000 (20:11 +0200)] 
comctl32/treeview: Fix NM_RCLICK behavior.

12 years agocomctl32/treeview: Clean up mouse tracking code.
Daniel Jelinski [Fri, 13 Jul 2012 17:53:40 +0000 (19:53 +0200)] 
comctl32/treeview: Clean up mouse tracking code.

12 years agogdiplus: Add support for converting RGB formats to 1bpp indexed.
Dmitry Timoshkov [Tue, 17 Jul 2012 06:02:31 +0000 (15:02 +0900)] 
gdiplus: Add support for converting RGB formats to 1bpp indexed.

12 years agogdiplus: Add support for converting RGB formats to 8bpp indexed.
Dmitry Timoshkov [Tue, 17 Jul 2012 06:01:51 +0000 (15:01 +0900)] 
gdiplus: Add support for converting RGB formats to 8bpp indexed.

12 years agogdiplus: Pass palette instead of bitmap to setpixel helpers.
Dmitry Timoshkov [Tue, 17 Jul 2012 06:01:16 +0000 (15:01 +0900)] 
gdiplus: Pass palette instead of bitmap to setpixel helpers.

12 years agogdiplus: Pass complete palette info to convert_pixels().
Dmitry Timoshkov [Tue, 17 Jul 2012 06:00:21 +0000 (15:00 +0900)] 
gdiplus: Pass complete palette info to convert_pixels().

12 years agogdiplus: Use public ColorPalette structure to store image palette.
Dmitry Timoshkov [Tue, 17 Jul 2012 05:59:43 +0000 (14:59 +0900)] 
gdiplus: Use public ColorPalette structure to store image palette.

12 years agogdiplus: Add some tests for GdipBitmapLockBits/GdipBitmapUnlockBits.
Dmitry Timoshkov [Tue, 17 Jul 2012 05:58:47 +0000 (14:58 +0900)] 
gdiplus: Add some tests for GdipBitmapLockBits/GdipBitmapUnlockBits.

12 years agogdiplus: Make sure that GdipBitmapLockBits stores valid lockmode.
Dmitry Timoshkov [Tue, 17 Jul 2012 05:57:40 +0000 (14:57 +0900)] 
gdiplus: Make sure that GdipBitmapLockBits stores valid lockmode.

12 years agowindowscodecs: Avoid using uninitialized value (LLVM/Clang).
Nicolas Le Cam [Sat, 14 Jul 2012 14:14:41 +0000 (16:14 +0200)] 
windowscodecs: Avoid using uninitialized value (LLVM/Clang).

12 years agoserver: Subtract the current update region from the valid rect when a window client...
Alexandre Julliard [Mon, 18 Jun 2012 15:11:55 +0000 (17:11 +0200)] 
server: Subtract the current update region from the valid rect when a window client area is changed.

12 years agowined3d: Introduce a separate function for initializing various limits.
Henri Verbeet [Tue, 17 Jul 2012 09:40:38 +0000 (11:40 +0200)] 
wined3d: Introduce a separate function for initializing various limits.

12 years agowined3d: Use the proper texture target in ffp_blit_p8_upload_palette().
Henri Verbeet [Tue, 17 Jul 2012 09:40:37 +0000 (11:40 +0200)] 
wined3d: Use the proper texture target in ffp_blit_p8_upload_palette().

12 years agowined3d: Use the proper texture target in fb_copy_to_texture_direct().
Henri Verbeet [Tue, 17 Jul 2012 09:40:36 +0000 (11:40 +0200)] 
wined3d: Use the proper texture target in fb_copy_to_texture_direct().

12 years agowined3d: Use the proper texture target in ffp_blit_set().
Henri Verbeet [Tue, 17 Jul 2012 09:40:35 +0000 (11:40 +0200)] 
wined3d: Use the proper texture target in ffp_blit_set().

12 years agowined3d: Use the proper texture target in arbfp_blit_set().
Henri Verbeet [Tue, 17 Jul 2012 09:40:34 +0000 (11:40 +0200)] 
wined3d: Use the proper texture target in arbfp_blit_set().

For cube maps, texture->target is GL_TEXTURE_CUBE_MAP and would be used for
calls that apply to the entire texture, like glTexParameter().
surface->texture_target refers to individual faces like
GL_TEXTURE_CUBE_MAP_POSITIVE_X, etc., and would be used for calls like
glTexImage2D(). What makes this a bit ugly is the fact that surfaces don't
always have an associated texture.

12 years agod3drmdef.h: Replace unsigned long by ULONG.
Jacek Caban [Tue, 17 Jul 2012 08:37:58 +0000 (10:37 +0200)] 
d3drmdef.h: Replace unsigned long by ULONG.

12 years agoole32: Fix QueryInterface for IErrorInfo to return IUnknown pointer.
Nikolay Sivov [Tue, 17 Jul 2012 07:22:59 +0000 (11:22 +0400)] 
ole32: Fix QueryInterface for IErrorInfo to return IUnknown pointer.

12 years agoole32: COM cleanup for IErrorInfo.
Nikolay Sivov [Tue, 17 Jul 2012 07:14:12 +0000 (11:14 +0400)] 
ole32: COM cleanup for IErrorInfo.

12 years agoole32: COM cleanup of HGLOBAL ILockBytes implementation.
Nikolay Sivov [Tue, 17 Jul 2012 06:53:14 +0000 (10:53 +0400)] 
ole32: COM cleanup of HGLOBAL ILockBytes implementation.

12 years agoole32: Make ole stream creation helper capable of handling flags data.
Nikolay Sivov [Tue, 17 Jul 2012 06:31:08 +0000 (10:31 +0400)] 
ole32: Make ole stream creation helper capable of handling flags data.

12 years agoole32: Use interface macros to call methods.
Nikolay Sivov [Tue, 17 Jul 2012 06:15:25 +0000 (10:15 +0400)] 
ole32: Use interface macros to call methods.

12 years agomsxml3: Use single helper to test for handler presence.
Nikolay Sivov [Tue, 17 Jul 2012 05:58:36 +0000 (09:58 +0400)] 
msxml3: Use single helper to test for handler presence.

12 years agojoy.cpl: Added force feedback direction control.
Lucas Zawacki [Tue, 17 Jul 2012 01:37:12 +0000 (22:37 -0300)] 
joy.cpl: Added force feedback direction control.

12 years agojoy.cpl: Tab for force feedback tests.
Lucas Zawacki [Tue, 17 Jul 2012 01:35:23 +0000 (22:35 -0300)] 
joy.cpl: Tab for force feedback tests.

12 years agopo: Update Chinese (Taiwan) translation.
Wei-Lun Chao [Fri, 13 Jul 2012 16:35:41 +0000 (00:35 +0800)] 
po: Update Chinese (Taiwan) translation.

12 years agopo: Update Chinese (Taiwan) translation.
Wei-Lun Chao [Fri, 13 Jul 2012 16:33:07 +0000 (00:33 +0800)] 
po: Update Chinese (Taiwan) translation.

12 years agopo: Update Chinese (Taiwan) translation.
Wei-Lun Chao [Fri, 13 Jul 2012 16:32:45 +0000 (00:32 +0800)] 
po: Update Chinese (Taiwan) translation.

12 years agomsvcp90: Handle npos as a len in basic_string<>::replace.
Daniel Lehman [Fri, 30 Dec 2011 00:08:39 +0000 (16:08 -0800)] 
msvcp90: Handle npos as a len in basic_string<>::replace.

12 years agokernel32/tests: Add a IOCTL_DVD_READ_STRUCTURE (DvdManufacturerDescriptor) test.
Alexandre Goujon [Mon, 16 Jul 2012 18:06:25 +0000 (20:06 +0200)] 
kernel32/tests: Add a IOCTL_DVD_READ_STRUCTURE (DvdManufacturerDescriptor) test.

12 years agod3dcompiler: Implement basic expressions parsing.
Matteo Bruni [Mon, 16 Jul 2012 18:39:23 +0000 (20:39 +0200)] 
d3dcompiler: Implement basic expressions parsing.

12 years agod3dcompiler: Don't allow semantics on void functions.
Matteo Bruni [Mon, 16 Jul 2012 18:39:22 +0000 (20:39 +0200)] 
d3dcompiler: Don't allow semantics on void functions.

12 years agod3dcompiler: Variables and functions can't have the same name.
Matteo Bruni [Mon, 16 Jul 2012 18:39:21 +0000 (20:39 +0200)] 
d3dcompiler: Variables and functions can't have the same name.

12 years agod3dcompiler: Pass the complete location to add_func_parameter().
Matteo Bruni [Mon, 16 Jul 2012 18:39:20 +0000 (20:39 +0200)] 
d3dcompiler: Pass the complete location to add_func_parameter().

12 years agod3dcompiler: Store location information in constants, variable dereferences and const...
Matteo Bruni [Mon, 16 Jul 2012 18:39:19 +0000 (20:39 +0200)] 
d3dcompiler: Store location information in constants, variable dereferences and constructors.

12 years agoopengl32/tests: Run more tests against the GDI renderer.
Alexandre Julliard [Mon, 16 Jul 2012 22:22:24 +0000 (00:22 +0200)] 
opengl32/tests: Run more tests against the GDI renderer.

12 years agojoy.cpl: Correct joystick testing thread behavior.
Lucas Zawacki [Mon, 16 Jul 2012 17:05:39 +0000 (14:05 -0300)] 
joy.cpl: Correct joystick testing thread behavior.

12 years agomsi/tests: Mark some test results as broken.
Hans Leidekker [Mon, 16 Jul 2012 16:40:40 +0000 (18:40 +0200)] 
msi/tests: Mark some test results as broken.

12 years agogdiplus: Fix palette flags for a not indexed 1-bpp image.
Dmitry Timoshkov [Fri, 13 Jul 2012 02:50:05 +0000 (11:50 +0900)] 
gdiplus: Fix palette flags for a not indexed 1-bpp image.

12 years agogdiplus: Make sure that 1bpp bitmap images get loaded in native format.
Dmitry Timoshkov [Fri, 13 Jul 2012 02:47:57 +0000 (11:47 +0900)] 
gdiplus: Make sure that 1bpp bitmap images get loaded in native format.

12 years agouser32/tests: Update DlgDirList tests.
Bruno Jesus [Thu, 12 Jul 2012 23:41:16 +0000 (20:41 -0300)] 
user32/tests: Update DlgDirList tests.

Based on original patch from Christian Lupien.

12 years agohhctrl.ocx: Permit WS_CHILD help windows.
Erich Hoover [Thu, 12 Jul 2012 16:25:07 +0000 (10:25 -0600)] 
hhctrl.ocx: Permit WS_CHILD help windows.

12 years agohhctrl.ocx: Implement HH_CLOSE_ALL.
Erich Hoover [Thu, 12 Jul 2012 16:21:36 +0000 (10:21 -0600)] 
hhctrl.ocx: Implement HH_CLOSE_ALL.

12 years agousp10: Implement GPOS Pair Adjustment Positioning Subtable.
Aric Stewart [Mon, 16 Jul 2012 12:24:16 +0000 (07:24 -0500)] 
usp10: Implement GPOS Pair Adjustment Positioning Subtable.

12 years agousp10: Implement GPOS Single Adjustment Positioning.
Aric Stewart [Mon, 16 Jul 2012 12:24:13 +0000 (07:24 -0500)] 
usp10: Implement GPOS Single Adjustment Positioning.

12 years agousp10: Handle GPOS ValueRecords.
Aric Stewart [Mon, 16 Jul 2012 12:24:09 +0000 (07:24 -0500)] 
usp10: Handle GPOS ValueRecords.

12 years agousp10: Implement GPOS MarkToBase.
Aric Stewart [Mon, 16 Jul 2012 12:24:06 +0000 (07:24 -0500)] 
usp10: Implement GPOS MarkToBase.

12 years agousp10: In ScriptTextOut make use of piAdvance and pGoffset to position glyphs.
Aric Stewart [Mon, 16 Jul 2012 12:24:02 +0000 (07:24 -0500)] 
usp10: In ScriptTextOut make use of piAdvance and pGoffset to position glyphs.

12 years agousp10: Add GPOS features to scripts as defined by VOLT.
Aric Stewart [Mon, 16 Jul 2012 12:23:57 +0000 (07:23 -0500)] 
usp10: Add GPOS features to scripts as defined by VOLT.

12 years agousp10: Implement GPOS Anchor formats.
Aric Stewart [Mon, 16 Jul 2012 12:23:53 +0000 (07:23 -0500)] 
usp10: Implement GPOS Anchor formats.

12 years agousp10: Implement SHAPE_ApplyOpenTypePositions using GPOS table.
Aric Stewart [Mon, 16 Jul 2012 12:23:49 +0000 (07:23 -0500)] 
usp10: Implement SHAPE_ApplyOpenTypePositions using GPOS table.

12 years agousp10: Change OpenType_GSUB_GetFontFeatureTags to OpenType_GetFontFeatureTags and...
Aric Stewart [Mon, 16 Jul 2012 12:23:46 +0000 (07:23 -0500)] 
usp10: Change OpenType_GSUB_GetFontFeatureTags to OpenType_GetFontFeatureTags and load features from GPOS table.

12 years agousp10: Change OpenType_GSUB_GetFontLangaugeTags to OpenType_GetFontLanguageTags and...
Aric Stewart [Mon, 16 Jul 2012 12:23:42 +0000 (07:23 -0500)] 
usp10: Change OpenType_GSUB_GetFontLangaugeTags to OpenType_GetFontLanguageTags and load languages from GPOS table as well.

12 years agousp10: Change OpenType_GSUB_GetFontScriptTags to OpenType_GetFontScriptTags and load...
Aric Stewart [Mon, 16 Jul 2012 12:23:39 +0000 (07:23 -0500)] 
usp10: Change OpenType_GSUB_GetFontScriptTags to OpenType_GetFontScriptTags and load scripts from GPOS table as well.

12 years agousp10: Load the GPOS table.
Aric Stewart [Mon, 16 Jul 2012 12:23:35 +0000 (07:23 -0500)] 
usp10: Load the GPOS table.

12 years agoups10: Rename common opentype tables used in both GSUB and GPOS to OT_.
Aric Stewart [Mon, 16 Jul 2012 12:23:27 +0000 (07:23 -0500)] 
ups10: Rename common opentype tables used in both GSUB and GPOS to OT_.

12 years agod3dx9: Implement volume texture filtering in D3DXFilterTexture.
Józef Kucia [Fri, 13 Jul 2012 15:21:55 +0000 (17:21 +0200)] 
d3dx9: Implement volume texture filtering in D3DXFilterTexture.

12 years agod3dx9: Use structure to pass volume size to pixel format conversion functions.
Józef Kucia [Fri, 13 Jul 2012 15:21:54 +0000 (17:21 +0200)] 
d3dx9: Use structure to pass volume size to pixel format conversion functions.

12 years agod3dx9: Implement point filtering for volume textures.
Józef Kucia [Fri, 13 Jul 2012 15:21:53 +0000 (17:21 +0200)] 
d3dx9: Implement point filtering for volume textures.

12 years agod3dx9: Implement pixel format conversion for volume textures.
Józef Kucia [Fri, 13 Jul 2012 15:21:52 +0000 (17:21 +0200)] 
d3dx9: Implement pixel format conversion for volume textures.

12 years agojscript: Don't set constructor property to each object instance, it belongs to their...
Jacek Caban [Mon, 16 Jul 2012 13:32:15 +0000 (15:32 +0200)] 
jscript: Don't set constructor property to each object instance, it belongs to their prototypes.

12 years agojscript: Expose RegExpError constructor in global object.
Jacek Caban [Mon, 16 Jul 2012 13:31:58 +0000 (15:31 +0200)] 
jscript: Expose RegExpError constructor in global object.

12 years agojscript: Properly set Error object's constructor property.
Jacek Caban [Mon, 16 Jul 2012 13:31:37 +0000 (15:31 +0200)] 
jscript: Properly set Error object's constructor property.

12 years agojscript: Properly set Function constructor's constructor property.
Jacek Caban [Mon, 16 Jul 2012 13:31:24 +0000 (15:31 +0200)] 
jscript: Properly set Function constructor's constructor property.

12 years agojscript: Properly handle constructor property for most builtin constructors.
Jacek Caban [Mon, 16 Jul 2012 13:31:10 +0000 (15:31 +0200)] 
jscript: Properly handle constructor property for most builtin constructors.

12 years agojscript: Properly set Number.prototyp.constructor.
Jacek Caban [Mon, 16 Jul 2012 13:30:54 +0000 (15:30 +0200)] 
jscript: Properly set Number.prototyp.constructor.

12 years agod3dx9_36: Implementation of D3DXSHEvalDirection.
Nozomi Kodama [Sun, 15 Jul 2012 08:18:50 +0000 (10:18 +0200)] 
d3dx9_36: Implementation of D3DXSHEvalDirection.