Christopher Page
27c427add2
Scumm and sky now use the new _quit flag
...
svn-id: r32775
2008-06-25 03:17:01 +00:00
Christopher Page
0f41f1ccf4
SKY: Fixed a memory leak in SKY engine
...
svn-id: r32578
2008-06-06 16:40:39 +00:00
Torbjörn Andersson
89e0c0b315
Since BASS treats speech separately from other sounds, let's use the
...
speech_volume setting for that, as suggested on the forum.
svn-id: r31941
2008-05-08 05:05:47 +00:00
Jordi Vilalta Prat
38a8aa516e
Allow static and dynamic plugins to be used at the same time
...
svn-id: r31888
2008-05-06 03:00:26 +00:00
Max Horn
d31ca4982e
Add support for --list-saves to the sky engine
...
svn-id: r30987
2008-02-27 16:07:38 +00:00
Max Horn
d4e9661809
Modified the BASS save/load code to use a StringList for storing the save state titles (simplified the code, removed some cruft)
...
svn-id: r30986
2008-02-27 15:44:39 +00:00
Max Horn
778309ed56
Simplified Control::handleKeyPress and fixed a long-standing bug in the verification of the save name
...
svn-id: r30981
2008-02-27 11:03:09 +00:00
Max Horn
88bb567e18
Merged lots of _mixer->isReady() warnings into a single one in Engine constructor
...
svn-id: r30871
2008-02-15 17:01:35 +00:00
Jordi Vilalta Prat
c103290e2b
Initial support for plugin types
...
svn-id: r30825
2008-02-08 00:02:23 +00:00
Max Horn
8a73356a2d
Revised Engine plugin API to only provide a single func which returns a MetaEngine instance. Used this to simplify the rest of the plugin system
...
svn-id: r30780
2008-02-03 18:56:47 +00:00
Max Horn
015e73b792
cleanup
...
svn-id: r30777
2008-02-03 18:23:27 +00:00
Torbjörn Andersson
e51bf80218
Changed "COMPATIBLITY" to "COMPATIBILITY".
...
svn-id: r30754
2008-02-03 10:15:36 +00:00
Jordi Vilalta Prat
c070f0d04f
Converted queen and sky to use MetaEngine (forgot them because they don't use the AdvancedDetector).
...
svn-id: r30752
2008-02-03 09:39:26 +00:00
Jordi Vilalta Prat
d6c34bdc4b
Fixed the spaces before tabs.
...
svn-id: r30667
2008-01-28 00:14:17 +00:00
Jordi Vilalta Prat
66e9d4f5e8
Removed trailing spaces.
...
svn-id: r30664
2008-01-27 19:47:41 +00:00
Paul Gilbert
6eb64102a4
Fix to remove a tab character from the GPL header
...
svn-id: r30238
2008-01-05 12:45:14 +00:00
Max Horn
3d46219592
Patch #1689516 : BASS: Update the cursor when right-clicking in inventory
...
svn-id: r30085
2007-12-30 17:58:22 +00:00
Eugene Sandulenko
d4d072fe04
Patch #1857121 : Refactoring of the getSavePath method
...
svn-id: r30032
2007-12-28 07:37:04 +00:00
Gregory Montoir
a34df6e72d
add Common::Rect::center (handy for ::setFocusRectangle())
...
svn-id: r29751
2007-12-07 20:53:06 +00:00
Max Horn
aa034c4e4d
This workaround is no longer needed
...
svn-id: r28980
2007-09-20 08:47:13 +00:00
Eugene Sandulenko
77eea722af
Modified patch #1738058 : "Action recorder".
...
svn-id: r28968
2007-09-19 13:55:05 +00:00
Nicola Mettifogo
258901bab9
Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
...
svn-id: r28966
2007-09-19 08:40:12 +00:00
Max Horn
c3d3aebe87
Patch #1768757 : Merge fsnode-gsoc into trunk (MAJOR change, will break compilation on some ports)
...
svn-id: r28944
2007-09-18 20:02:04 +00:00
Chris Apers
500481c4ec
Cleanup: remove obsolete code (PalmOS 68K version not supported anymore)
...
svn-id: r28803
2007-09-01 19:13:04 +00:00
David Corrales
9bfe5d5354
Merged the FSNode branch with trunk r27681:27969
...
svn-id: r27970
2007-07-08 16:58:54 +00:00
Max Horn
e1bcd70436
Re-added __attribute__(packed)
...
svn-id: r27830
2007-07-01 18:18:43 +00:00
Max Horn
675fc8ab71
Whitespace fix
...
svn-id: r27762
2007-06-28 19:48:41 +00:00
Willem Jan Palenstijn
1af6b35edb
increase mt-32 sysex delay to prevent buffer overflow (see FR#1393726)
...
svn-id: r27731
2007-06-26 22:33:07 +00:00
David Corrales
cacd7a28fd
Merged the FSNode branch with trunk r27031:27680
...
svn-id: r27681
2007-06-23 18:51:33 +00:00
Max Horn
c99515be86
Changed BASS to use more KEYCODEs
...
svn-id: r27670
2007-06-23 15:40:28 +00:00
Max Horn
05ca0d86ba
Converted BASS to use Common::KeyState
...
svn-id: r27635
2007-06-22 22:18:56 +00:00
David Corrales
3b96c7fad5
Renamed methods in the FilesystemNode class to match the AbstractFSNode implementations.
...
Also exposed the new methods (exists, isReadable and isWritable) in FilesystemNode.
svn-id: r27113
2007-06-05 21:02:35 +00:00
Max Horn
218e132e37
Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
...
svn-id: r27024
2007-05-30 21:56:52 +00:00
Max Horn
d4660cce55
Removing more semicola
...
svn-id: r26597
2007-04-26 19:08:53 +00:00
Max Horn
00b9bc7b36
Removing lots of superfluous semicola (see mail by David Weinehall on scummvm-devel)
...
svn-id: r26594
2007-04-25 19:31:23 +00:00
Robert Göffringmann
fb59ee92a2
corrected printf string
...
svn-id: r26363
2007-04-01 20:06:26 +00:00
Gregory Montoir
5aca9dce8c
added the instance of EventManager returned by OSystem::getEventManager as a member of the Engine base class. This allows to simply the code a bit and should more efficient too (ie. less virtual function chain calls, obj->getA()->getB()). Also updated several engines to make use of it.
...
svn-id: r26357
2007-04-01 17:36:13 +00:00
Max Horn
852971cfe6
Fixed a compiler warning about 'unknown conversion type character' (not sure if the statement was meant this way or another, but at least for now I can again compile with -Werror)
...
svn-id: r26356
2007-04-01 17:13:45 +00:00
Robert Göffringmann
63ff4aa50b
Fixed setFocusRectangle code. At least I think I did, I don't know where it came from and I can't test it either. But it looked rather broken.
...
svn-id: r26335
2007-04-01 00:13:54 +00:00
Robert Göffringmann
2edec11986
improved debugger a bit
...
svn-id: r26334
2007-04-01 00:00:28 +00:00
Robert Göffringmann
c0ca592d54
fixed graphic glitch when playing the floppy intro with spanish subtitles and added a few comments.
...
svn-id: r26333
2007-03-31 18:20:52 +00:00
Robert Göffringmann
549e535a97
BASS is not Counter Strike, so redrawing the screen at 70 fps feels a little pointless. It's also more than the average pal tv set can do ;)
...
svn-id: r26328
2007-03-30 19:13:23 +00:00
Torbjörn Andersson
7a41f19639
Update the screen in escDelay(). Seems to fix some glitches when changing
...
scaler at certain points in the intro.
svn-id: r26322
2007-03-29 20:06:39 +00:00
Torbjörn Andersson
86a60b633d
Fixed long-standing font bug. We were using the control panel font for LINC
...
space and terminals, and the LINC font for the control panel. Since these fonts
contain different sets of characters, this would often cause the wrong
character to be displayed, particularly in non-English languages. This also
explains why we had to use the "wrong" font for the control panel recently.
The functions to patch the LINC character set (actually the control character
set) should no longer be needed, and have been removed.
Should fix bug #1669564 .
svn-id: r26275
2007-03-22 18:49:42 +00:00
Robert Göffringmann
139608f451
Fixed bug #1678349 : BASS: music is off, but drum track plays
...
svn-id: r26219
2007-03-18 17:58:26 +00:00
Torbjörn Andersson
003dfed001
Fixed control panel sliders.
...
svn-id: r26209
2007-03-18 14:30:26 +00:00
Robert Göffringmann
3f6745a2f4
Applied eriktorbjorn's patch for bug #1657466 :
...
"BASS: wrong music slider behavior"
and did some cleanup.
svn-id: r26208
2007-03-18 14:08:34 +00:00
Max Horn
ed54ea9155
Moved Event/EventType/keyboard enum from common/system.h (part of class OSystem) to common/events.h (part of namespace Common). Porters may have to make minor changes to their backends to get them to compile again
...
svn-id: r26180
2007-03-17 19:02:05 +00:00
Max Horn
478c0644f1
SKY: Changed Control class to use event manager for mouse coord tracking, and also made it respect the SF_MOUSE_LOCKED flag
...
svn-id: r26177
2007-03-17 16:31:46 +00:00
Max Horn
59064dbef4
SKY: respect the SF_MOUSE_LOCKED flag upon mouse clicks, too
...
svn-id: r26176
2007-03-17 16:22:51 +00:00
Torbjörn Andersson
c1f4dbda77
Use the new getButtonState() function to test if the mouse button is still
...
pressed. This way, it won't matter if we've already missed the "mouse up"
event. Fixes bug #1510038 ("BASS: Possible glitch when examining inventory
items".
svn-id: r26162
2007-03-17 09:37:47 +00:00
Max Horn
15d9bc42ea
Force all code to use EventManager::pollEvent instead of OSystem::pollEvent
...
svn-id: r26156
2007-03-17 00:53:21 +00:00
Max Horn
f86ca1803b
Fixed bug #1507835 (BASS: Control panel text differences from the original)
...
svn-id: r26136
2007-03-14 20:18:59 +00:00
Max Horn
93e316bec7
Fix for bug #1656880 (BASS: mouse initialized wrong in control panel)
...
svn-id: r26130
2007-03-14 12:32:42 +00:00
Max Horn
4e5aa19f74
fix warning
...
svn-id: r26073
2007-03-10 22:49:19 +00:00
Torbjörn Andersson
8d4e8adef3
Let the mixer worry about converting mono to stereo.
...
svn-id: r26065
2007-03-10 17:39:27 +00:00
Torbjörn Andersson
2c7bf36af8
Close sky.dnr directly after reading it into memory. No need to keep it open
...
until the Disk object is deleted.
svn-id: r25889
2007-02-26 23:08:52 +00:00
Max Horn
227a080e5b
Patch #1663933 (Kill premix channel) with a few tiny additional tweaks by me
...
svn-id: r25752
2007-02-20 18:50:17 +00:00
Torbjörn Andersson
ee13273fc4
More header fixes for that warm and fuzzy feeling of consistency.
...
svn-id: r25749
2007-02-20 17:52:55 +00:00
Max Horn
b8aeefaffb
Added finalize() method to Common::OutSaveFile (which by default just flushes the stream), changed engines to call that before deleting OutSaveFile instances (instead of just flushing)
...
svn-id: r25660
2007-02-17 18:55:51 +00:00
Torbjörn Andersson
16e7a12878
Some very obvious cleanups.
...
svn-id: r25635
2007-02-16 17:13:29 +00:00
Max Horn
4db72c8762
Unified how we deal with (and how we generate) MIDI sysex messages -- in particular, we now always do so w/o framing the message (documented this with a Doxygen comment in the MidiDriver class)
...
svn-id: r25630
2007-02-16 13:30:41 +00:00
Max Horn
063e09be02
Patch #1656801 (BASS: various control panel fixes), which fixes bug #1548779 (BASS: Control panel inconsistency for FX/Music button texts)
...
svn-id: r25473
2007-02-10 18:10:55 +00:00
Max Horn
1421a43969
Patch #1543932 : BASS: Missing music volume text in v303 french menu
...
svn-id: r25413
2007-02-07 19:01:37 +00:00
Max Horn
73c3625f1f
Fixing various doxygen warnings
...
svn-id: r25362
2007-02-03 21:37:52 +00:00
Max Horn
cb49cbdd45
* Reimplemented Mixer::pauseAll to simply invoke pause on all channels
...
(implying change of semantics)
* Reordered the params of Mixer::playRaw (the SoundType now comes first, not last)
* Removed Mixer::isPaused
* Removed Mixer::getSoundElapsedTimeOfSoundID
* Added some doxygen comments to the Mixer
svn-id: r25356
2007-02-03 19:05:53 +00:00
Eugene Sandulenko
cd8a5f3a98
First phase of detection-related plugins interface improvements. Now plugins
...
return StringMap instead of fixed list of parameters. This adds great
flexibility.
Current patch should not alter any functionality, i.e. if there are regressions,
submit a report. Phase 2 will benefit from these changes and will come later.
svn-id: r25134
2007-01-20 21:27:57 +00:00
Max Horn
b5cbbd705a
Added some more const keywords
...
svn-id: r24330
2006-10-15 02:15:38 +00:00
Joost Peters
bf6ba21d83
commit "fixed regression in BASS adlib music." from 0-9-0 branch to trunk
...
svn-id: r24204
2006-10-08 12:31:05 +00:00
Max Horn
125d599acc
Improved the BASS detector a bit
...
svn-id: r24084
2006-10-02 22:26:57 +00:00
Max Horn
4c14cf6d1a
Moved base/engine.cpp and .h to engines/ (main motivation: helps untangle the linker dependency graph). Porters will have to update project files
...
svn-id: r23974
2006-09-23 00:42:35 +00:00
Max Horn
651d22b873
* Added virtual Engine::getDebugger() method
...
* Removed code from errorString() methods that hooked the debugger(s)
into error(), in favor of using getDebugger() from within error()
* As a consequence, removed most custom errorString() methods
svn-id: r23894
2006-09-16 19:31:23 +00:00
Max Horn
919092e5fc
Overhaul of the debugger code
...
* Moved Common::Debuggger to GUI::Debugger (mainly to satisfy linker
restrictions)
* Change the base Debugger class to *not* be a template class anymore;
instead, a thin (template based) wrapper class is used to hook up
debugger commands
* Removed duplicate Cmd_Exit and Cmd_Help methods in favor of a single
version of each in GUI::Debugger
* New Cmd_Help doesn't word wrap after 39/78 chars, but rather queries
the console to determine when to wrap
* Debugger::preEnter and postEnter aren't pure virtual anymore
svn-id: r23890
2006-09-16 16:58:27 +00:00
Joost Peters
998d2fe96a
Apply patch #1534805 ("BASS: Linc font too wide in version 303")
...
svn-id: r23714
2006-08-16 20:01:58 +00:00
Max Horn
4a80db4c7b
* Added copyright string to all engine plugins
...
* Modified about dialog to list all available plugins with their resp. copyright
* Modified about dialog credits to show the GPL last (like movie end credits do with their legal text, too)
svn-id: r23645
2006-07-31 13:41:21 +00:00
Torbjörn Andersson
c32076e5d0
Use #include "..." instead of #include <...> for pack-start.h and pack-end.h
...
for consistency with other #includes.
svn-id: r23585
2006-07-23 16:13:26 +00:00
Max Horn
2859b64702
Fix struct packing issues (macros are not resolve in #pragma params, at least for GCC)
...
svn-id: r23569
2006-07-22 17:28:48 +00:00
Johannes Schickel
cfd9977425
Using FilesystemNode::name instead of FilesystemNode::displayName in all game detectors.
...
svn-id: r23558
2006-07-22 14:50:50 +00:00
Max Horn
f59cf1fcdc
Removing GCC_PACK, we fully rely on START_PACK_STRUCTS / END_PACK_STRUCTS now (hiya eriktorbjorn, this one is for you *ggg*)
...
svn-id: r23547
2006-07-21 21:25:17 +00:00
Torbjörn Andersson
6358547a43
More whitespace changes.
...
svn-id: r23496
2006-07-14 13:33:58 +00:00
Max Horn
f35f4a4d1c
Use START_PACK_STRUCTS / END_PACK_STRUCTS when available, instead of checking for GCC / not GCC
...
svn-id: r23458
2006-07-09 13:01:15 +00:00
Max Horn
eaff9344a4
Added OSystem::setFocusRectangle (first part of Nintendo DS patch)
...
svn-id: r23449
2006-07-09 09:40:44 +00:00
Max Horn
9a955180a4
* Renamed config.mak to config.mk
...
* Renamed common.rules to rules.mk
* Removed explicit declaration of MODULE_DIRS in various spots (instead we let rules.mk compute it)
svn-id: r23275
2006-06-24 08:48:11 +00:00
Max Horn
d210b19aec
Move backends/fs/fs.h and .cpp to common/fs/fs.h and .cpp
...
Rationale: backend implementations belong to backends/, but portable APIs meant to be used by high level code is for common / sound / graphics / ... (compare also with backends/midi vs. sound/mididrv.h)
svn-id: r23274
2006-06-24 08:07:48 +00:00
Torbjörn Andersson
b85ed06d79
Match the original behaviour more closely when examining inventory items. The
...
text is displayed at least 800 ms. See bug #1181865 .
svn-id: r23233
2006-06-21 15:05:12 +00:00
Travis Howell
cf0563fe4d
Add eriktorbjorn's patch for bug #1507757 - BASS: Odd press sound at beginning
...
svn-id: r23219
2006-06-21 11:33:40 +00:00
Torbjörn Andersson
08c2e21901
Initialise the control panel's _mouseX / _mouseY. Fixes a Valgrind warning.
...
svn-id: r23212
2006-06-21 06:17:36 +00:00
Torbjörn Andersson
ff38faa21d
The stopMusic() function (which is publicly accessable from the outside) now
...
locks the mutex to avoid pulling the proverbial rug out from beneath the timer
callback's proverbial feet. To stop the music when the mutex is already locked,
we use stopMusicInternal(), which is a protected function. This will hopefully
fix the crash on exit which has happened to me every few months.
svn-id: r23159
2006-06-17 15:54:40 +00:00
Torbjörn Andersson
8062eb6ec3
Set and show/hide mouse cursors through a "cursor manager" (analogous to the
...
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.
If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?
svn-id: r22639
2006-05-25 22:51:42 +00:00
Max Horn
84b2a4f76f
It's wrong to assume a given file is located in gameDataPath, so do not use that to print out warnings that pretend otherwise
...
svn-id: r22272
2006-05-01 22:27:56 +00:00
Max Horn
27307acd7c
Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
...
svn-id: r22231
2006-04-29 22:33:31 +00:00
Torbjörn Andersson
ac0ae13bee
Fixed bug #1478911 ("BASS regression: garbled text") by making skipBytes uint16
...
instead of uint8. (It used to be uint32, but anything that can hold 0x03F8
should be large enough.)
svn-id: r22230
2006-04-29 17:50:15 +00:00
Max Horn
bf73598811
* Changed the createEngine() factory function of our plugins to return an error code (the engine is now passed indirectly via a double pointer)
...
* Removed Engine_Empty (obsolete now that engines can return actual error codes)
svn-id: r22199
2006-04-29 00:27:20 +00:00
Joost Peters
ac1ce25512
add missing comma for portuguese quit text, remove stray comma after last string.
...
svn-id: r22187
2006-04-26 22:31:10 +00:00
Max Horn
8fdcfedf19
Do not call static class methods as if they were instance methods
...
svn-id: r22172
2006-04-26 08:34:01 +00:00
Max Horn
74edd90aba
Fix for bug #1471383 : Instead of overloading ConfigManager::set, we now have new setInt and setBool methods (matching getInt/getBool), which avoids strange quirks & bugs caused by (char *) being implicitly cast to int (ouch)
...
svn-id: r21951
2006-04-16 19:23:14 +00:00
Max Horn
856b1b0bf4
Do not override the 'directory' param when dumping BASS resources
...
svn-id: r21936
2006-04-16 12:39:59 +00:00
Max Horn
68cb7f52c8
- Renamed ConfigManager::getActiveDomain to getActiveDomainName, and added a new getActiveDomain method that returns a pointer to the actual active *domain*
...
- Added Engine::_targetName whose value is computed from the name of the active domain
- Removed GameDetector::_targetName, instead code now uses either Engine::_targetName or the name of the active domain
- This in turn allowed for removing usage of GameDetector in many places
svn-id: r21916
2006-04-15 20:36:41 +00:00
Max Horn
2c3e1fe4ea
Fixing mismatch between format strings and data on some systems
...
svn-id: r21828
2006-04-12 14:54:31 +00:00
Jonathan Gray
eb3ae7d726
sizeof(void *) != sizeof(int) for a large number of systems.
...
Fix a lot of debug/error statements that were using %d/%x
for the result of pointer arithmetic.
As C++ apparently has no format string for ptrdiff_t use
%lu/%lx as appropriate.
svn-id: r21824
2006-04-12 10:01:41 +00:00
Max Horn
e7a8bb6abf
Modified the REGISTER_PLUGIN macro so that it allows (and requires) a trailing semicolon (this helps certain tools to parse our code better)
...
svn-id: r21689
2006-04-08 12:06:07 +00:00
Eugene Sandulenko
8fa9bd6728
Removed extra exclamation marks in warning() calls as well.
...
svn-id: r21608
2006-04-04 22:21:10 +00:00
Eugene Sandulenko
d292c0ec55
Since our debug() adds an exclamation mark at the message end, remove
...
it in several calls to avoid duplication!!11!
svn-id: r21607
2006-04-04 22:04:51 +00:00
Max Horn
361572af2c
Patch #1432378 : BASS: Memory leak, patch included
...
svn-id: r21523
2006-04-01 11:25:08 +00:00
Max Horn
8cdee5a931
Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
...
svn-id: r21500
2006-03-29 15:59:37 +00:00
Torbjörn Andersson
d8004bff51
Added support for mouse wheel scrolling in save/restore dialog.
...
svn-id: r21459
2006-03-26 06:22:41 +00:00
Max Horn
86565fcca5
- Renamed GameSettings to PlainGameDescriptor
...
- Added new GameDescriptor struct (similar to PlainGameDescriptor but with
Common::String members instead of const char * ones)
- Changed DetectedGame to subclass GameDescriptor
- Removed toGameSettings() in favor of new (template) constructors in
DetectedGame and GameDescriptor
- Fixed a bug in the obsolete gameid handling in the SCUMM & SIMON engines
svn-id: r21150
2006-03-09 02:52:51 +00:00
Max Horn
d9a9fac937
Fixed tons of format string warnings for debug/error calls (including several errors where the format string didn't match the number of arguments to the call)
...
svn-id: r21141
2006-03-08 11:37:25 +00:00
Max Horn
907bd7128d
Fix for bug #1438822 (Targets are case sensitive)
...
svn-id: r21017
2006-03-02 22:29:01 +00:00
Max Horn
8ac17430ac
- renamed PLUGIN_getSupportedGames to PLUGIN_gameIDList for consistency
...
- renamed Engine_XXX_gameList to Engine_XXX_gameList for consistency
- added new Engine_XXX_findGameID / PLUGIN_findGameID function
- updated plugins code to take advantage of the new plugin API, to support
obsolete gameids w/o showing them to the user
svn-id: r20752
2006-02-18 11:15:37 +00:00
Max Horn
81798556db
- Removed the 'features' field from GameSettings
...
- Removed GF_DEFAULT_TO_1X_SCALER
svn-id: r20747
2006-02-18 00:12:36 +00:00
Max Horn
a96760a2fd
Reduced use of GF_DEFAULT_TO_1X_SCALER in favor of a new param to Engine::initCommonGFX; added a TODO stating that it should eventually be removed completly
...
svn-id: r20738
2006-02-17 00:01:18 +00:00
Max Horn
be068cf6f3
The GameDetector is no longer a required parameter for Engine constructors
...
svn-id: r20590
2006-02-12 01:42:34 +00:00
Max Horn
80cf2fa46f
Reduced data duplication in module.mk files; added module.mk files for null and x11 backends; added engines/module.mk
...
svn-id: r20584
2006-02-12 00:16:31 +00:00
Max Horn
26ee630756
Moved engines to the new engines/ directory
...
svn-id: r20582
2006-02-11 22:45:04 +00:00