Commit Graph

317 Commits

Author SHA1 Message Date
Kirill K. Smirnov b391b8af58 systray: Properly track errors. 2008-02-06 12:52:34 +01:00
Francois Gouget d491335eb7 shell32/tests: Fix a couple of copy/paste errors. 2008-02-04 11:11:27 +01:00
Francois Gouget f6fab295f3 Fix spelling error in the generated conformance test files. 2008-01-16 12:46:18 +01:00
Francois Gouget ca3606f393 shell32/tests: Use GetProcAddress() on SHFileOperationW() because it is missing on Windows 95. 2007-12-18 12:32:56 +01:00
Francois Gouget 46735ae431 shell32/tests: Use GetProcAddress() on Shell_NotifyIconW() because it is missing on Windows 95. 2007-12-18 12:32:56 +01:00
Francois Gouget d22568d094 shell32/tests: Use GetProcAddress() on SHGetPathFromIDListW() because it is missing on Windows 95. 2007-12-18 12:32:56 +01:00
Francois Gouget 3874c55cc4 shell32/tests: Copy the PathRemoveBackslashA() and PathAddBackslashW() implementations because shlwapi.dll is missing on Windows 95. 2007-12-18 12:32:55 +01:00
Francois Gouget 000fd0edc5 shell32/tests: Avoid SHDeleteKeyA() because shlwapi.dll is missing on Windows 95. 2007-12-18 12:32:55 +01:00
Alexandre Julliard ad9396302d Removed some unneeded imports. 2007-12-06 21:24:24 +01:00
Gerald Pfeifer ff307d96c1 shell32: Remove useless comparison >= 0 for unsigned variables. 2007-11-02 12:20:52 +01:00
Alexandre Julliard 41cf63148a Fix redundant uses of MAKEINTRESOURCE. 2007-10-18 14:16:32 +02:00
Francois Gouget a9f9676046 shell32: CSIDL_MYDOCUMENTS is now a synonym for CSIDL_PERSONAL. 2007-09-18 11:20:40 +02:00
Vincent Povirk f4a4a1c054 shell32: Implement SHPathPrepareForWrite. 2007-09-14 16:20:14 +02:00
Vincent Povirk 6fe28bbee3 shell32: Add tests for SHPathPrepareForWrite. 2007-09-14 16:20:14 +02:00
Francois Gouget 2993785f3a Assorted non-ANSI function declaration fixes (missing void). 2007-08-30 11:57:18 +02:00
Paul Vriens 968d305148 shell32/tests: Use GetModuleHandle instead of LoadLibrary. 2007-08-17 11:47:41 +02:00
Paul Vriens 444a8e5190 shell32/tests: Use GetModuleHandle instead of LoadLibrary. 2007-08-16 11:35:06 +02:00
Paul Vriens f076919ca8 shell32/tests: Make tests run again on win95. 2007-08-14 12:46:47 +02:00
Misha Koshelev 0d750e3282 shell32: Fix shelllink creation to non-executable files and remove unnecessary code. 2007-06-29 13:43:27 +02:00
Misha Koshelev 240648534f shell32/tests: Fix tests of IShellLinkA_SetPath to conform on both Windows 98 and XP. 2007-06-29 13:43:02 +02:00
Misha Koshelev de774710d6 shell32/tests: Allow CoCreateInstance to return E_NOINTERFACE to pass on Win98; add skips and display return values. 2007-06-29 13:42:56 +02:00
Misha Koshelev 75fbca227b shell32/tests: Add test for shell links to existing non-executable files. 2007-06-29 13:42:48 +02:00
Misha Koshelev f8eabe0d37 shell32/tests: Allow individual tests in check_lnk to be todo_wine'd. 2007-06-29 13:42:38 +02:00
Misha Koshelev 9be151c2e9 shell32: Conform to native in SHELL_ArgifyW for unquoted %1 in registry keys. 2007-06-18 12:15:51 +02:00
Misha Koshelev 0678f6d168 shell32/tests: Add test for unquoted %1 in command and ddeexec keys. 2007-06-11 13:47:06 +02:00
Misha Koshelev b43cac0b04 shell32/tests: Allow testing for arbitrary number of command line arguments in DDE tests. 2007-06-11 13:46:59 +02:00
Misha Koshelev ca6387b329 shell32/tests: Expand default DDE application name tests to conform to win98. 2007-06-11 13:46:49 +02:00
Misha Koshelev 12297d64ef shell32/tests: Use ShellExecuteEx with SEE_MASK_FLAG_DDEWAIT and SEE_MASK_FLAG_NO_UI for DDE tests. 2007-06-11 13:46:35 +02:00
Misha Koshelev ee3147f434 shell32/tests: Save threadid from CreateThread as required by winme/98/95. 2007-06-11 13:46:08 +02:00
Misha Koshelev 37deec748d shell32/tests: Simplify DDE thread and message loop. 2007-06-11 13:45:51 +02:00
Nigel Liang 1fc0cb75ee shell32: Conformance tests for unicode filenames and fix a bug for file deletion. 2007-06-11 13:45:38 +02:00
Francois Gouget 96c337f0a1 Assorted spelling fixes. 2007-06-07 19:24:32 +02:00
Francois Gouget c6b64b0b47 shell32/tests: Remove unneeded cast. 2007-06-01 12:39:03 +02:00
Misha Koshelev c7aa087504 shell32/tests: Remove duplicate code. 2007-05-30 11:46:16 +02:00
Misha Koshelev efb92561e6 shell32: Handle default DDE application names. 2007-05-30 11:46:06 +02:00
Misha Koshelev c8829f5645 shell32/tests: Add tests for default DDE application name. 2007-05-30 11:45:13 +02:00
Misha Koshelev cfa87660a7 shell32: Fix execute_from_key to conform to native behavior. 2007-05-30 11:44:20 +02:00
Misha Koshelev b95d0fb9c3 shell32/tests: Add tests for ShellExecute DDE behavior. 2007-05-30 11:43:11 +02:00
Francois Gouget 258f2972aa shell32/tests: With recent PSDKs, CSIDL_MYDOCUMENTS is a synonym for CSIDL_PERSONAL. So define our own constant. 2007-05-29 13:17:52 +02:00
Francois Gouget 29a4a9c849 shell32/tests: We need NTDDI_VERSION >= NTDDI_WINXPSP1 to get SEE_MASK_NOZONECHECKS with the PSDK. 2007-05-29 12:12:26 +02:00
Mikołaj Zalewski 44e3200a8d shell32: Handle invalid cbSize in Shell_NotifyIcon[AW]. 2007-05-11 11:45:45 +02:00
Ken Thomases 42cd970ee0 shell32/tests: Test that quoting file path prevents masking at space. 2007-04-18 13:47:33 +02:00
Ken Thomases 1e5a03eca4 shell32/tests: Added to-do test showing a bug with file paths with spaces.
If ShellExecuteEx is asked to execute a file which has a space in its path,
and if there exists a "masking" file whose name matches the path truncated
at a space, then ShellExecuteEx launches the masking file instead.
2007-04-18 13:47:18 +02:00
Francois Gouget 996ced1981 shell32/tests: On NT4 FindExecutable() returns an extra backspace character in some tests. 2007-04-03 11:32:32 +02:00
Francois Gouget 1736e7eb76 shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the returned command which caused many tests to fail. 2007-04-03 11:32:27 +02:00
Francois Gouget 789fb4c994 shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable to read them back on Win >= 2000. 2007-04-03 11:27:28 +02:00
Francois Gouget 95ddcc3bae shell32/tests: Fix some expected FindExecutable() error codes.
Add comments indicating which Windows version returns a given error code.
2007-04-03 11:27:24 +02:00
Francois Gouget d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Paul Vriens b564a9130c shell32/tests: Rewording and cleanup. 2007-03-05 12:05:51 +01:00
Marcus Meissner 3b5b23311c shell32/tests: Fixed potential overflow. 2007-02-19 12:39:37 +01:00
Misha Koshelev 28b68dad8e shell32/tests: Test creating shell links for commands on path. 2007-02-14 21:45:56 +01:00
Francois Gouget 536e738552 Assorted spelling fixes. 2007-02-14 21:03:57 +01:00
Mikołaj Zalewski 33ee219ce3 shell32: Allow overwriting files in SHFileOperation(FO_COPY) (with confirmation dialogs). 2007-02-12 12:38:57 +01:00
Francois Gouget abedd3df59 shell32/tests: wnsprintfA() is missing on Win9x, so use sprintf() instead. 2007-02-09 14:32:57 +01:00
Francois Gouget f97a2f9def shell32/tests: Fix test_GetDisplayName() to cope with a left-over test directory. 2007-02-09 14:32:57 +01:00
Francois Gouget 14712ece18 shell32/tests: ILFree() and ILIsEqual() are exported by ordinal only on Win9x. So use GetProcAddress(). 2007-02-09 14:32:57 +01:00
Mikołaj Zalewski dbef32e4ed shell32: shlfileop tests: Avoid buffer overflows for paths. 2007-02-07 11:34:22 +01:00
Francois Gouget aa3165fca6 shell32: Add proper support for SHGetFileInfo(SHGFI_ICONLOCATION | SHGFI_USEFILEATTRIBUTES). 2007-01-19 12:28:57 +01:00
Francois Gouget 5c5933f699 shell32/tests: Add some more SHGetFileInfo() tests. 2007-01-19 12:28:57 +01:00
Francois Gouget d2daa384e9 shell32/tests: Hack SHGetFileInfo() so it does not crash and add a test for it. 2007-01-08 12:06:21 +01:00
Francois Gouget 947b71aeb0 shell32/tests: Print GetLastError() in decimal with '%u'. 2007-01-06 11:40:43 +01:00
Francois Gouget 71e5f3c116 shell32: Fix FindExecutable() to return the executable path, not the whole command. 2006-12-14 12:45:15 +01:00
Francois Gouget 65b81bebaa shell32/tests: Add FindExecutable() tests. 2006-12-14 12:45:04 +01:00
Francois Gouget 2fa16067f6 shell32/tests: MSDN says ShellExecute() == 32 indicates an error. So fix the tests. 2006-12-14 12:44:56 +01:00
Marcus Meissner f0280cbd1e made functions and variables static in some testcases. 2006-12-11 12:18:29 +01:00
Francois Gouget 144995b5a5 shell32/tests: Don't use the NONAMELESS* macros in the tests. 2006-11-24 11:48:56 +01:00
Aric Stewart 3490cb81ed shell32: Create dynamic buffers for expanded enviroment strings to allow for parameters and such longer than MAX_PATH.
With help from Michael Moss.
2006-11-06 14:10:55 +01:00
Paul Vriens 1af1ead894 shell32: Cast-qual warnings fix. 2006-10-30 11:26:30 +01:00
Ge van Geldorp d642e11438 winapi_test: Regenerate tests.
Remove structs from test list which have preprocessor directives in
their definitions (winapi_test can't handle that).
2006-10-11 12:12:21 +02:00
Hans Leidekker e5c1a014df shell32/tests: Win64 printf format warning fixes. 2006-10-09 12:53:26 +02:00
Francois Gouget c22eb7e3a3 shell32: Microsoft's EXP_DARWIN_LINK structure does not have a dbh
field so cast it to DATABLOCK_HEADER to access the dwSignature
field. Fixes the compilation with Visual C++ on Windows.
2006-10-03 15:56:32 +02:00
Francois Gouget 87045eb0c5 Fix rpcndr.h so it takes CONST_VTABLE into account.
Define CONST_VTABLE in the tests that need it. This fixes many Visual C++ warnings.
2006-09-29 17:52:27 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Alexandre Julliard fc4cd637d9 tests: Moved some compatibility defines to wine/test.h. 2006-09-13 11:01:39 +02:00
Mike McCormack 9949a3a463 shell32: Fix compilation of test on MSVC6. 2006-08-24 12:42:35 +02:00
Mike McCormack 4fa9f63761 shell32: IShellLink::SetPath removes quotes from the path. 2006-08-09 17:10:32 +02:00
Mike McCormack 1cc186ba81 shell32: Fix test compilation with MSVC6. 2006-08-09 17:10:27 +02:00
Andrew Talbot bbd8008b55 shell32/tests: Write-strings warnings fix. 2006-07-24 12:57:32 +02:00
Juan Lang 961193bc5d shell32: Always NULL-terminate path in SHGetPathFromIDList. 2006-07-11 17:37:13 +02:00
Alexandre Julliard 0fa8baafcb make_dlls: Recursively ignore .ok files in all tests directories. 2006-07-10 21:26:50 +02:00
Alexandre Julliard edd100b899 make_dlls: Recursively ignore testlist.c in all tests directories. 2006-07-10 21:19:42 +02:00
Alexandre Julliard cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Ivan Leo 48374cf630 shell32/tests: Comment out a test that crashes on windows nt 4.0. 2006-06-30 20:42:43 +02:00
Phil Lodwick 6fc50ff378 shell32/tests: Test to make sure we can create a non-nested directory. 2006-06-08 11:12:02 +02:00
Alexandre Julliard 23f9e358ad Tests should not use wine/unicode.h. 2006-05-24 18:05:09 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard c9cc7e33ff Fixed some compiler warnings on old gcc versions. 2006-03-02 18:03:32 +01:00
Michael Jung 50f3eaef77 shell32/tests: Added test for Desktop::ParseDisplayName(SHGetFolderPath(CSIDL_PERSONAL))
Test if the Desktop Folder's ParseDisplayName recognizes MyDocument's
path.  Removed some HRESULT tests on IUnknown_Release calls, which
returns ULONG.
2006-02-27 12:18:28 +01:00
Eric Pouech 1be2e1edef shell32: Fixes for bugs found by valgrind on shell32 tests harness.
- 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)
2006-02-22 12:04:02 +01:00
Alexandre Julliard 39a1a94221 shell32: Use more reasonable timeouts in shlexec test. 2006-02-21 19:30:29 +01:00
Martin Fuchs c362d7c35b shell32: SHELL32_GetItemAttributes()
- correct documentation which incorrectly claimed not to set any
  attribute bits
- retrieve file attributes using SHGetPathFromIDListW() when they are
  not already present in the internal PIDL structures
- add test case to show the previously wrong folder attributes when
  using absolute PIDLs
- fix some memory leaks in the tests
2006-02-11 12:16:56 +01:00
James Hawkins 1be970d485 shell32: Reimplement a factored SHFileOperation. 2006-01-23 11:22:59 +01:00
Michael Jung f87efbd14e unixfs: Fix SetNameOf.
Ensure that pidls passed to SHNotify are absolute SetNameOf should
fail on absolute path names.
Some tests to show this.
2006-01-16 20:37:51 +01:00
Michael Jung 9281c948bf shell32/unixfs: Added unicode support in folder and file pidls. 2006-01-03 13:23:59 +01:00
Francois Gouget 6526c3772d Add trailing '\n's to ok() calls.
Remove spaces before '\n' in traces.
2006-01-03 12:10:37 +01:00
James Hawkins 22ddd114a8 shell32: Clean up the SHFileOperation tests.
- Make sure to create all the files used by the new tests.
- Add a couple more SHFileOperation tests.
- Fix some of the old tests.
2005-12-26 12:56:06 +01:00
Michael Jung 259fd03407 shell32: Added some test to document native ITEMIDLIST format. 2005-12-22 17:16:11 +01:00
James Hawkins 036d5eff7b shell32: Add tests for SHFileOperation's FO_MOVE command. 2005-12-22 11:19:13 +01:00
James Hawkins d49181f99a shell32: Add tests for SHFileOperation's FO_COPY command. 2005-12-22 11:17:19 +01:00
James Hawkins edf423ab86 shell32: Add tests for SHFileOperation's FO_RENAME command. 2005-12-22 11:16:57 +01:00
James Hawkins d3c3bc1d3a shell32: Add tests for SHFileOperation's FO_DELETE command. 2005-12-22 11:15:42 +01:00
James Hawkins bad4a1dc5f shell32: Remove the '.\\' prefix from filenames, because it hides a
bug in SHFileOperation.
2005-12-21 21:18:19 +01:00
Michael Jung 9a0369449e shell32/tests: Fixed a test failing on WinXP. 2005-12-20 11:57:44 +01:00
Paul Vriens ac7fd9d6e5 shell32/tests/shlfolder.c: ILFindLastID has to be called by ordinal. 2005-12-12 18:13:14 +01:00
Michael Jung 4db7733369 Added a test for native PIDL format. 2005-12-02 11:25:18 +01:00
Martin Fuchs 0b17529332 Correctly call HCR_GetFolderAttributes() in SHELL32_GetItemAttributes().
Directly return the correct "My Computer" attributes in
ISF_Desktop_fnGetAttributesOf().
Remove "todo_wine" from the "My Computer" attributes test case.
Add test case for retrieving the file system path from the
CSIDL_PROGRAM_FILES PIDL using SHGetPathFromIDListW().
2005-11-28 10:38:06 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Francois Gouget 0edbaf7e80 Remove spaces before '\n' in traces. 2005-11-10 12:14:56 +00:00
Saulius Krasuckas 57707fa0ea Disable code that segfaults on Win98 SE. 2005-11-09 10:30:15 +00:00
Michael Jung 329f4edefc - Move target folder initialization to a dedicated function.
- Use this function in BindToObject (should be faster).
- Special handling for FolderShortcut objects in Initialize method.
- Removed a todo_wine from a no longer failing unit test.
2005-11-05 10:44:28 +00:00
Mike McCormack 991e7054cf Partially implement and test the shelllink object's
IShellLinkDataList::CopyDataBlock and GetFlags methods.
2005-11-04 11:40:58 +00:00
Michael Jung 92032e6e35 Added some more unit tests for FolderShortcut objects. 2005-11-03 12:04:24 +00:00
Mike McCormack 32d5240178 Invoke shortcuts through IContextMenu, rather than trying to access
them directly.
2005-11-03 11:33:57 +00:00
Alexandre Julliard 73f7847297 Authors: Vitaliy Margolen <wine-patch@kievinfo.com>, Michael Jung <mjung@iss.tu-darmstadt.de>
Set all capability flags supported by the shellfolder, disregarding
the flag mask given to GetAttributesOf.
Unit tests to demonstrate this behaviour.
2005-11-03 09:56:07 +00:00
Mike McCormack 9997f84eac Add void to empty declaration list. 2005-10-31 15:43:27 +00:00
Michael Jung 8fca00e030 Implemented UnixFolder's IPersistPropertyBag::Load method. 2005-10-27 12:09:59 +00:00
James Hawkins 8c523fe36c Test that the FO_COPY action creates output directories if they don't
exist.
2005-10-11 19:26:47 +00:00
Francois Gouget a1f9a13997 Use "static const" rather than "const static" as gcc -W complains
about the former.
2005-10-06 11:38:45 +00:00
Ge van Geldorp 5b7da80911 Fix execution of Control Panel items. 2005-09-12 12:10:57 +00:00
Juan Lang 4a9d838ca4 Remove an annoying dialog when trying to clean up a directory. 2005-09-12 10:09:50 +00:00
Michael Jung c72d13291a Removed two todo_wine's around tests that meanwhile succeed on wine. 2005-09-07 13:28:49 +00:00
Michael Jung 937441b3ac Don't clone pidlLast in SHBindToParent. 2005-09-07 09:22:49 +00:00
Saulius Krasuckas 28f0c36036 SHELL32.ILFindLastID is exported by ordinal. 2005-09-06 14:05:07 +00:00
Juan Lang 9cbe48f80c Fix a test failing on Windows. Reported by Katerina Nizhnik. 2005-09-03 09:37:15 +00:00
Michael Jung 3676640e64 Added test to show that Windows does not allocate a new pidl in
SHBindToParent.
2005-08-29 21:45:49 +00:00
Alexandre Julliard cc4da88563 Explicitly import kernel32 in tests that use it. 2005-08-27 09:27:09 +00:00
Michael Jung 868921648f Added some tests for CLSID_FolderShortcut objects. 2005-08-23 09:37:59 +00:00
Mike McCormack f49f36f9eb Fix gcc 4.0 warnings. 2005-08-23 09:37:30 +00:00
Saulius Krasuckas 94feee327b Make file operations succeed on Win9x too. 2005-08-22 09:14:35 +00:00
Francois Gouget 5b5e5086d7 Test "%l" and "%L". At the same time this tests alternate verbs.
Test %1, %l and %L with no quotes.
test->todo is a bitmask so fix the checks accordingly.
2005-08-18 10:47:53 +00:00
Francois Gouget 0b5cc286e3 Fix ShellExecute("\"foo.doc\"") for Internet Explorer 6.
Update the conformance tests accordingly.
Tweak a trace because it's very confusing to see the path with no
escaped quotes in ShellExecuteA() and then with escaped quotes in
ShellExecuteExW32() (due to debugstr_w()).
2005-08-17 09:53:30 +00:00
Francois Gouget 7f65f6a4e2 Dynamically load StrRetToBufW(). This lets shell32_test.exe run on
systems that have version 4.72 of shlwapi.dll.
2005-08-16 19:29:40 +00:00
Francois Gouget 1fddb3ff20 Verify the parameters received by the child process using code lifted
from kernel32/tests/process.c.
Test passing parameters to .lnk files that point to an executable.
2005-08-16 19:29:27 +00:00
Michael Jung 2fac564cc5 Remove "initguid.h" include from shellpath test. 2005-08-16 16:00:07 +00:00
Saulius Krasuckas 6400c8e3dd Fix some SHGetSpecialFolderPathA exceptions on WinME:
- pass pointer to valid buffer as lpszPath.
- disable check passing NULL as lpszPath.
2005-08-15 10:22:56 +00:00
Saulius Krasuckas 7be2cd973c XP returns E_INVALIDARG on failure. 2005-08-15 09:40:45 +00:00
Saulius Krasuckas 68d4ca1f6a Win98 returns HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)) on failure. 2005-08-12 10:33:37 +00:00
Steven Edwards c8857c0786 Correct definition of SFGAO_STORAGEANCESTOR. 2005-08-11 10:33:21 +00:00
Saulius Krasuckas c3760e7de1 Remove trailing backslash. 2005-08-08 18:03:47 +00:00
Saulius Krasuckas 843314ed9a Wine and NT4 returns E_FAIL on failure. 2005-08-08 11:04:30 +00:00
Mike McCormack bc4a576a06 gcc 4.0 RegSetValueEx warning fixes. 2005-08-03 11:03:44 +00:00
Saulius Krasuckas 60f2d44e1f Added test for IShellFolder_ParseDisplayName. 2005-08-02 14:41:51 +00:00
Paul Vriens 5b325a6d15 Skip test that crashes on W2K/WinXP/W2K. 2005-07-24 17:12:06 +00:00
Francois Gouget 5179aa1bae Get started testing ShellExecute(). 2005-07-24 16:26:53 +00:00
Francois Gouget 28dc5a8afc Assorted spelling fixes. 2005-07-11 10:59:41 +00:00
Michael Jung 9f4c67d50d Return correct HRESULT code in UnixFolder's IEnumIDList::Next.
Corresponding test.
2005-07-08 11:30:18 +00:00
Mike McCormack b8fc783be2 Avoid warnings in generated tests by casting sizeof(x) to an int. 2005-07-03 11:23:30 +00:00
Saulius Krasuckas 5678f65c07 Prepare for adding new tests.
- Put OleInitialize and OleUninitialize in the main block.
- Move test_BindToObject before test_EnumObjects_and_CompareIDs.
2005-06-30 10:23:14 +00:00
Vitaliy Margolen eed690f973 ILFree is not available on all versions. 2005-06-29 11:00:59 +00:00