]> git.mxchange.org Git - simgear.git/log
simgear.git
11 years agoState-machine structure, initial work.
James Turner [Sun, 20 Jan 2013 13:57:20 +0000 (14:57 +0100)]
State-machine structure, initial work.

11 years agoAdd left/right Nasal library functions.
James Turner [Sun, 20 Jan 2013 09:45:32 +0000 (10:45 +0100)]
Add left/right Nasal library functions.

11 years agoMore native math functions in Nasal.
James Turner [Sun, 20 Jan 2013 08:03:05 +0000 (09:03 +0100)]
More native math functions in Nasal.

11 years agospt: Put the sea level textured tiles also under a transform node.
Mathias Froehlich [Sun, 20 Jan 2013 14:33:25 +0000 (15:33 +0100)]
spt: Put the sea level textured tiles also under a transform node.

11 years agospt: Consistently return references in the loader.
Mathias Froehlich [Sun, 20 Jan 2013 14:33:25 +0000 (15:33 +0100)]
spt: Consistently return references in the loader.

11 years agospt: Use SGBox to build up the bounding spheres for the tiles.
Mathias Froehlich [Sun, 20 Jan 2013 14:33:25 +0000 (15:33 +0100)]
spt: Use SGBox to build up the bounding spheres for the tiles.

11 years agobucket: Make no bucket cross the 0 and 180 deg longitude border.
Mathias Froehlich [Sun, 20 Jan 2013 14:33:25 +0000 (15:33 +0100)]
bucket: Make no bucket cross the 0 and 180 deg longitude border.

Change the bucket tiling at the poles not to cross the
0deg longitude and not to cross the 180deg longitude line.
This lets some special cases disappear for the buckets as well
as for the hierarchical level of detail spt loader.
Also change the last degree tiles from spanning 360 degrees to
12 degrees. Before we had 8 nested rings which neither helps
scenery paging nor culling. With that change the chunks are
about the same order of size than any other tile. Also the
tile shapes are much more friendly for culling and paging.
Also in presence of the current scenery, this polar tiles contain
as of today just totally broken geometry which tells me that
also the scenery generation process did not like these rings
for the tile shapes.

The impact on the current scenery is low. With this change the
polar regions do no longer load the tiles that are available
in the current scenery builds. The last degree tiles are broken
in this scenery version anyway. The next degree that is changed
will really loose some tiles that were sensible as of today.
All these areas are replaced with sea tiles by the old paging
structure. So, you will have at least ground below you when you
fly there. A hopefully comming soon scenery rebuild will
use this new tiling structure and thus will be the first one
providing closed polar caps.

11 years agoBump version to 2.11.0
Torsten Dreyer [Thu, 17 Jan 2013 18:22:07 +0000 (19:22 +0100)]
Bump version to 2.11.0

11 years agoCanvas: Provide sane default bounding box (For Image & Text)
Thomas Geymayer [Wed, 9 Jan 2013 11:11:19 +0000 (12:11 +0100)]
Canvas: Provide sane default bounding box (For Image & Text)

11 years agoFix canvas mouse intersection test
Thomas Geymayer [Fri, 4 Jan 2013 23:44:19 +0000 (00:44 +0100)]
Fix canvas mouse intersection test

Bounding box of drawables use other coordinate frame
then bounding sphere of MatrixTransform...

11 years agocanvas::Element: parse full 3x3 matrix
Thomas Geymayer [Tue, 1 Jan 2013 13:18:39 +0000 (14:18 +0100)]
canvas::Element: parse full 3x3 matrix

This doesn't change any existing behaviour but allows specifying
full 3x3 matrix to eg. perform a perspective transform needed
for some HUDs.

11 years agoAllow nasal::Ghost to only wrap classes by their shared pointers
Thomas Geymayer [Sat, 29 Dec 2012 16:47:07 +0000 (17:47 +0100)]
Allow nasal::Ghost to only wrap classes by their shared pointers

This removes support for exposing and managing classes by just
raw pointers as this made lifetime management of instances
from C++ to Nasal and especially the other way round nearly
impossible. Always using smart pointers saves us from a lot
of headaches.

11 years agoNotify all requests on name lookup failures.
James Turner [Sat, 29 Dec 2012 14:36:38 +0000 (14:36 +0000)]
Notify all requests on name lookup failures.

Since there's no active request during a name lookup failure, explicitly fail all sent and queued requests, so the Request subclasses can take regular failure action.

11 years agoExpose the current members of a subsystem group.
James Turner [Fri, 28 Dec 2012 14:54:00 +0000 (14:54 +0000)]
Expose the current members of a subsystem group.

11 years agoAdd SGPath to the Nasal conversion helpers.
James Turner [Fri, 28 Dec 2012 14:53:31 +0000 (14:53 +0000)]
Add SGPath to the Nasal conversion helpers.

11 years agoOS-X specific sleep helper, more stable.
James Turner [Sun, 23 Dec 2012 23:30:40 +0000 (23:30 +0000)]
OS-X specific sleep helper, more stable.

11 years agoRevert to old way of including everything from SGMath.hxx
Thomas Geymayer [Sun, 23 Dec 2012 00:17:56 +0000 (01:17 +0100)]
Revert to old way of including everything from SGMath.hxx

11 years agoTweak libSvn usage: fixes a crash on Mac.
James Turner [Sat, 22 Dec 2012 23:55:37 +0000 (23:55 +0000)]
Tweak libSvn usage: fixes a crash on Mac.

Work-around a crash on certain Mac builds (I can't tell why other work fine) where the called parameters to apr_pool_create_ex are problematic. Explicitly pass the default values for the function.

11 years agohla: Lower the log level of two alerts.
Mathias Froehlich [Sat, 22 Dec 2012 09:09:17 +0000 (10:09 +0100)]
hla: Lower the log level of two alerts.

Trying to interpret the object template in a yet
unimplemented format is not worth an alert.

11 years agofeature freeze for 2.10.0, new version number
Torsten Dreyer [Tue, 18 Dec 2012 20:57:02 +0000 (21:57 +0100)]
feature freeze for 2.10.0, new version number

11 years agoMissing file...
Thomas Geymayer [Mon, 17 Dec 2012 09:53:52 +0000 (10:53 +0100)]
Missing file...

11 years agoNasal cppbindings: automatic conversion of vec2 to/from Nasal
Thomas Geymayer [Sun, 16 Dec 2012 23:26:02 +0000 (00:26 +0100)]
Nasal cppbindings: automatic conversion of vec2 to/from Nasal

11 years agoFix memory leak if nasal::Ghost creation fails
Thomas Geymayer [Sun, 16 Dec 2012 20:31:19 +0000 (21:31 +0100)]
Fix memory leak if nasal::Ghost creation fails

11 years agoCanvas: Remove old event handling code
Thomas Geymayer [Sun, 16 Dec 2012 18:02:21 +0000 (19:02 +0100)]
Canvas: Remove old event handling code

11 years agoCanvas: create mouseover/mouseout events
Thomas Geymayer [Sun, 16 Dec 2012 17:52:20 +0000 (18:52 +0100)]
Canvas: create mouseover/mouseout events

11 years agoImprove HTTP behaviour when name lookup fails.
James Turner [Sat, 15 Dec 2012 15:09:33 +0000 (15:09 +0000)]
Improve HTTP behaviour when name lookup fails.

Don't endlessly re-send requests when name lookup fails; inform the next layer up so it can decide whether to retry.

11 years agoRename simgear::Rect to SGRect and make interface more similar to SGBox
Thomas Geymayer [Thu, 13 Dec 2012 22:37:21 +0000 (23:37 +0100)]
Rename simgear::Rect to SGRect and make interface more similar to SGBox

11 years agoOverload Rect::contains and add compound assignment operators to PropertyObject
Thomas Geymayer [Wed, 12 Dec 2012 23:30:01 +0000 (00:30 +0100)]
Overload Rect::contains and add compound assignment operators to PropertyObject

11 years agoWhoops, fix bad #ifdef to disable sound. Bug #958
James Turner [Wed, 12 Dec 2012 11:16:29 +0000 (11:16 +0000)]
Whoops, fix bad #ifdef to disable sound. Bug #958

11 years agoCreate new FBO if Canvas render target size chanages
Thomas Geymayer [Sun, 9 Dec 2012 22:08:04 +0000 (23:08 +0100)]
Create new FBO if Canvas render target size chanages

As doesnt seem to work to just resize the texture, if changing
the size of the Canvas render target a new FBO is created and
placed on all active placements.

11 years agoCanvas: MouseEvent now contains screen and client pos
Thomas Geymayer [Sat, 8 Dec 2012 13:59:29 +0000 (14:59 +0100)]
Canvas: MouseEvent now contains screen and client pos

11 years agoWork on making OpenAL a compile-time option.
James Turner [Fri, 7 Dec 2012 20:26:24 +0000 (15:26 -0500)]
Work on making OpenAL a compile-time option.

ENABLE_SOUND=0 now works when configuring SimGear, and libSimGearScene can be linked without OpenAL. However, more testing of FlightGear in this mode is needed before it's officially supported!

11 years agoCanvas: basic support for rectangular clipping (like CSS clip property)
Thomas Geymayer [Fri, 7 Dec 2012 17:36:37 +0000 (18:36 +0100)]
Canvas: basic support for rectangular clipping (like CSS clip property)

11 years agoCanvas: Fix handling drag events and some cleanup.
Thomas Geymayer [Fri, 7 Dec 2012 17:34:43 +0000 (18:34 +0100)]
Canvas: Fix handling drag events and some cleanup.

11 years agoImplement Canvas single/double/tripple click handling.
Thomas Geymayer [Thu, 6 Dec 2012 22:13:19 +0000 (23:13 +0100)]
Implement Canvas single/double/tripple click handling.

 - Implement click event creation like specified in
   DOM Level 3:
   * Check for max move distance between mousedown/up
     and clicks
   * Check for click timeout
   * Count clicks and report double clicks

11 years agoCanvas: Propagate style changes on groups to children
Thomas Geymayer [Thu, 6 Dec 2012 10:33:51 +0000 (11:33 +0100)]
Canvas: Propagate style changes on groups to children

11 years agoFix RNG so it is passed in from above rather than generating the same
Stuart Buchanan [Wed, 5 Dec 2012 22:10:45 +0000 (22:10 +0000)]
Fix RNG so it is passed in from above rather than generating the same
seed continuously.

11 years agoExtend Canvas to retrieve bounding box of groups
Thomas Geymayer [Tue, 4 Dec 2012 22:58:08 +0000 (23:58 +0100)]
Extend Canvas to retrieve bounding box of groups

11 years agocanvas::Element: print warning instead of crash on removing unknown transform
Thomas Geymayer [Sun, 2 Dec 2012 22:55:17 +0000 (23:55 +0100)]
canvas::Element: print warning instead of crash on removing unknown transform

11 years agohla: Add SGQuat data elements.
Mathias Froehlich [Sun, 2 Dec 2012 14:37:02 +0000 (15:37 +0100)]
hla: Add SGQuat data elements.

11 years agohla: Add integer valued vector types.
Mathias Froehlich [Sun, 2 Dec 2012 14:35:31 +0000 (15:35 +0100)]
hla: Add integer valued vector types.

11 years agomath: Add integer valued vector types.
Mathias Froehlich [Sun, 2 Dec 2012 13:50:04 +0000 (14:50 +0100)]
math: Add integer valued vector types.

11 years agohla: Remove obsolete typedefs.
Mathias Froehlich [Sun, 2 Dec 2012 13:49:30 +0000 (14:49 +0100)]
hla: Remove obsolete typedefs.

11 years agoFirst working version of DOM like Canvas event handling
Thomas Geymayer [Sun, 2 Dec 2012 12:19:35 +0000 (13:19 +0100)]
First working version of DOM like Canvas event handling

 - Now it is possible to attach listeners to canvas
   elements and also the canvas itself, which get
   called upon different mouse events (Currently
   only basic mouse events supported. click/dblclick
   etc. are missing)

11 years agoFixed incomplete copy&paste issue.
ThorstenB [Sat, 1 Dec 2012 10:07:10 +0000 (11:07 +0100)]
Fixed incomplete copy&paste issue.

11 years ago#946: some libraries not found on Ubuntu/Debian
ThorstenB [Sat, 1 Dec 2012 09:59:57 +0000 (10:59 +0100)]
#946: some libraries not found on Ubuntu/Debian
Ubuntu/Debian introduced "multiarch" library directories, which is
unsupported by CMake <= 2.8.10. Add manual search paths as a workaround.
Currently it is only needed for libsvn, but it is needed for any lib
which is converted to the new directory standard.

11 years agoLook for Boost 1.52.0 and OpenRTI under Windows
Frederic Bouvier [Sat, 1 Dec 2012 09:59:58 +0000 (10:59 +0100)]
Look for Boost 1.52.0 and OpenRTI under Windows

11 years agohla: Use a different extrapolation method for HLALocation.
Mathias Froehlich [Sat, 1 Dec 2012 06:59:56 +0000 (07:59 +0100)]
hla: Use a different extrapolation method for HLALocation.

11 years agoSharedPtr: Avoid double dereference when calling clear().
Mathias Froehlich [Sat, 1 Dec 2012 06:58:38 +0000 (07:58 +0100)]
SharedPtr: Avoid double dereference when calling clear().

11 years agoAdd method canvas::Group::getElementById
Thomas Geymayer [Thu, 29 Nov 2012 23:06:17 +0000 (00:06 +0100)]
Add method canvas::Group::getElementById

 - canvas::Group: New method to get a (possibly
   nested) child by its id.
 - nasal::Ghost: Also support recursive parent
   hashes.

11 years agoFix some compiler warnings. size_t/int/unsigned conversions and extra ';'
Thomas Geymayer [Thu, 29 Nov 2012 19:20:40 +0000 (20:20 +0100)]
Fix some compiler warnings. size_t/int/unsigned conversions and extra ';'

11 years agoUse better method names and add comments
Thomas Geymayer [Thu, 29 Nov 2012 16:52:52 +0000 (17:52 +0100)]
Use better method names and add comments

11 years agoAdd methods to get arguments passed to function from Nasal
Thomas Geymayer [Thu, 29 Nov 2012 00:23:15 +0000 (01:23 +0100)]
Add methods to get arguments passed to function from Nasal

11 years agoSGThread: compile under MSVC
Christian Schmitt [Wed, 28 Nov 2012 17:29:15 +0000 (18:29 +0100)]
SGThread: compile under MSVC

11 years agoSGThread: Add capability to get current thread id
Peter Sadrozinski [Wed, 28 Nov 2012 00:00:00 +0000 (19:00 -0500)]
SGThread: Add capability to get current thread id

11 years agoSimplify/Make VS happy
Thomas Geymayer [Tue, 27 Nov 2012 14:14:54 +0000 (15:14 +0100)]
Simplify/Make VS happy

11 years agoCanvas: Prepare for DOM Level 2 like event model.
Thomas Geymayer [Tue, 27 Nov 2012 12:46:48 +0000 (13:46 +0100)]
Canvas: Prepare for DOM Level 2 like event model.

11 years agocppbind: Automatic conversion of derived ghosts and some cleanup/fixes
Thomas Geymayer [Tue, 27 Nov 2012 12:01:46 +0000 (13:01 +0100)]
cppbind: Automatic conversion of derived ghosts and some cleanup/fixes

11 years agoMake SGLockingQueue::pop usable.
James Turner [Sun, 25 Nov 2012 22:36:15 +0000 (22:36 +0000)]
Make SGLockingQueue::pop usable.

Since there's no external lock, it was impossible to check the queue was non-empty before a pop, without a race condition. To avoid this, tolerate an empty queue and return a default constructed value.

11 years agohla: For setting data types recurse into array data elements.
Mathias Froehlich [Sun, 25 Nov 2012 21:24:51 +0000 (22:24 +0100)]
hla: For setting data types recurse into array data elements.

11 years agohla: Use an implementation file for SGLocation.
Mathias Froehlich [Sun, 25 Nov 2012 20:08:04 +0000 (21:08 +0100)]
hla: Use an implementation file for SGLocation.

11 years agosphere: Implement sphere inside sphere.
Mathias Froehlich [Sat, 24 Nov 2012 08:54:21 +0000 (09:54 +0100)]
sphere: Implement sphere inside sphere.

11 years agohla: Route failures in message processing into the HLA layer.
Mathias Froehlich [Sat, 24 Nov 2012 08:54:21 +0000 (09:54 +0100)]
hla: Route failures in message processing into the HLA layer.

11 years agohla: Make use of SGLocation.
Mathias Froehlich [Sat, 24 Nov 2012 08:54:21 +0000 (09:54 +0100)]
hla: Make use of SGLocation.

11 years agomath: Implement SGLocation.
Mathias Froehlich [Sat, 24 Nov 2012 08:54:21 +0000 (09:54 +0100)]
math: Implement SGLocation.

New simple class to encapsulate a cartesian position
and orientation pair with few handy methods.

11 years agoChange logging class for tie/untie messages.
ThorstenB [Fri, 23 Nov 2012 19:44:17 +0000 (20:44 +0100)]
Change logging class for tie/untie messages.
It's enough to see them in "general".

11 years agoAdd logging class for navaid systems.
ThorstenB [Fri, 23 Nov 2012 19:41:03 +0000 (20:41 +0100)]
Add logging class for navaid systems.

11 years ago#942 segfault with --log-level=debug when random buildings enabled
ThorstenB [Thu, 22 Nov 2012 20:55:11 +0000 (21:55 +0100)]
#942 segfault with --log-level=debug when random buildings enabled

12 years agoImplement runway guard lights and tweak the hold short lights animation a bit
Christian Schmitt [Thu, 22 Nov 2012 15:42:56 +0000 (16:42 +0100)]
Implement runway guard lights and tweak the hold short lights animation a bit

12 years agoExtend CanvasSystemAdapter to provide access to Nasal gcSave and gcRelease
Thomas Geymayer [Wed, 21 Nov 2012 23:54:44 +0000 (00:54 +0100)]
Extend CanvasSystemAdapter to provide access to Nasal gcSave and gcRelease

12 years agoFix compiler error with disabled sound support.
ThorstenB [Wed, 21 Nov 2012 19:17:58 +0000 (20:17 +0100)]
Fix compiler error with disabled sound support.
("source" is undefined in SGSampleGroup::stop).
Also fixes two related compiler warnings (unused var "sample").

12 years agoAllow canvas::Placements to have own properties
Thomas Geymayer [Wed, 21 Nov 2012 12:05:19 +0000 (13:05 +0100)]
Allow canvas::Placements to have own properties

12 years agoSGPropertyNode::fireCreatedRecursive: don't fire for node itself by default
Thomas Geymayer [Wed, 21 Nov 2012 10:57:53 +0000 (11:57 +0100)]
SGPropertyNode::fireCreatedRecursive: don't fire for node itself by default

12 years agoModernise the mat lib header, remove 'using std'
James Turner [Tue, 20 Nov 2012 17:10:13 +0000 (17:10 +0000)]
Modernise the mat lib header, remove 'using std'

12 years agoWork on ENABLE_SOUND.
James Turner [Tue, 20 Nov 2012 12:20:21 +0000 (12:20 +0000)]
Work on ENABLE_SOUND.

Restructure SGSampleGroup, to make #ifdef-ing the OpenAL calls easier. No functionality change.

12 years agoKeep (deprecated) SGTime::update method for a while
ThorstenB [Mon, 19 Nov 2012 22:42:51 +0000 (23:42 +0100)]
Keep (deprecated) SGTime::update method for a while
allowing dependent projects to adapt.

12 years agoRemove duplicate members in SGSampleQueue.
James Turner [Mon, 19 Nov 2012 15:33:53 +0000 (15:33 +0000)]
Remove duplicate members in SGSampleQueue.

Remove duplicate members shared by SGSoundSample and SGSampleQueue (which inherits from it). Change SGSoundSample to expose some members as protected data for access by the sample-queue, and hence share nearly all the methods. Also remove 'inline' keyword from virtual methods.

12 years agoGet Canvas/PropertyBasedElement by name
Thomas Geymayer [Sun, 18 Nov 2012 15:26:50 +0000 (16:26 +0100)]
Get Canvas/PropertyBasedElement by name

12 years agoFix HTTP test for revised POST semantics.
James Turner [Sat, 17 Nov 2012 19:51:57 +0000 (19:51 +0000)]
Fix HTTP test for revised POST semantics.

12 years agoTweak HTTP handling for POST requests.
James Turner [Sat, 17 Nov 2012 18:08:38 +0000 (18:08 +0000)]
Tweak HTTP handling for POST requests.

Tolerate slightly malformed request URLs (no slash following the host specified), and use a better check when POST-ing to decide the request-body data source.

12 years agoFix for old gcc which got broken by fix for VS
Thomas Geymayer [Fri, 16 Nov 2012 15:49:35 +0000 (16:49 +0100)]
Fix for old gcc which got broken by fix for VS

12 years agoFix for VS bug
Thomas Geymayer [Fri, 16 Nov 2012 14:49:43 +0000 (15:49 +0100)]
Fix for VS bug

12 years agoNasal bindings: Always pass object by reference
Thomas Geymayer [Fri, 16 Nov 2012 11:24:47 +0000 (12:24 +0100)]
Nasal bindings: Always pass object by reference

12 years agoOne more fix for old gcc
Thomas Geymayer [Thu, 15 Nov 2012 22:31:18 +0000 (23:31 +0100)]
One more fix for old gcc

12 years agoFix compile errors for old gcc
Thomas Geymayer [Thu, 15 Nov 2012 21:17:43 +0000 (22:17 +0100)]
Fix compile errors for old gcc

12 years agoCanvas/C++ bindings: automatically detect dynamic type of polymorphic exposed classes
Thomas Geymayer [Thu, 15 Nov 2012 20:17:33 +0000 (21:17 +0100)]
Canvas/C++ bindings: automatically detect dynamic type of polymorphic exposed classes

12 years agoWork around Visual Studio bug
Thomas Geymayer [Tue, 13 Nov 2012 11:35:12 +0000 (12:35 +0100)]
Work around Visual Studio bug

12 years agoC++/Nasal bindings: allow registering free function as member
Thomas Geymayer [Mon, 12 Nov 2012 22:28:00 +0000 (23:28 +0100)]
C++/Nasal bindings: allow registering free function as member

12 years agoMissing include and more doxygen improvements
Thomas Geymayer [Mon, 12 Nov 2012 12:57:10 +0000 (13:57 +0100)]
Missing include and more doxygen improvements

12 years agoFix file headers
Thomas Geymayer [Mon, 12 Nov 2012 11:25:08 +0000 (12:25 +0100)]
Fix file headers

12 years agoAdd nasal::Ghost class for exposing C++ classes to Nasal
Thomas Geymayer [Mon, 12 Nov 2012 11:11:27 +0000 (12:11 +0100)]
Add nasal::Ghost class for exposing C++ classes to Nasal

12 years agohla: Remove HLADataElement::Path based attribute handling.
Mathias Froehlich [Sun, 11 Nov 2012 15:56:22 +0000 (16:56 +0100)]
hla: Remove HLADataElement::Path based attribute handling.

12 years agoGeoff McLane: realpath for Windows using _fullpath.
ThorstenB [Sun, 11 Nov 2012 18:26:51 +0000 (19:26 +0100)]
Geoff McLane: realpath for Windows using _fullpath.
Also switch cygwin to use POSIX call.

12 years agohla: Use HLADataElementIndices for HLAInteractionClass.
Mathias Froehlich [Sun, 11 Nov 2012 15:54:43 +0000 (16:54 +0100)]
hla: Use HLADataElementIndices for HLAInteractionClass.

12 years agohla: Use HLADataElementIndices for HLALocation.
Mathias Froehlich [Sun, 11 Nov 2012 13:26:14 +0000 (14:26 +0100)]
hla: Use HLADataElementIndices for HLALocation.

12 years agohla: Fixes for the data element index implementation.
Mathias Froehlich [Sun, 11 Nov 2012 09:47:09 +0000 (10:47 +0100)]
hla: Fixes for the data element index implementation.

12 years agoAdd from_nasal helper and fix to_nasal for std::vector.
Thomas Geymayer [Sat, 10 Nov 2012 13:18:27 +0000 (14:18 +0100)]
Add from_nasal helper and fix to_nasal for std::vector.

12 years agogz wrapper to write and read "container files".
ThorstenB [Sat, 10 Nov 2012 09:44:19 +0000 (10:44 +0100)]
gz wrapper to write and read "container files".
Packs arbitrary data (strings, property trees, binary blobs, ...) into a
single file.
Use this for storing/loading user-data only, not for distribution files
(scenery, aircraft etc).

12 years agoProper fix for gzfilebuf choking on some files.
ThorstenB [Sat, 10 Nov 2012 09:12:01 +0000 (10:12 +0100)]
Proper fix for gzfilebuf choking on some files.
When reading a new block of data, and the first byte of the new block is
0xff (_signed_ char -1), then this must be converted to _integer_ 0xff
(+255), not -1 - which would indicate an error condition (EOF==-1). All
valid _data_ character must be returned as non-negative, see
streambuf::underflow spec, or compare with
http://www.opensource.apple.com/source/zlib/zlib-12/zlib/contrib/iostream/zfstream.cpp
or
http://www.raspberryginger.com/jbailey/minix/html/zfstream_8cpp-source.html

12 years agogzfilebuf choked when reading large, heavily compressed files.
ThorstenB [Fri, 9 Nov 2012 21:02:34 +0000 (22:02 +0100)]
gzfilebuf choked when reading large, heavily compressed files.
Apparently a 4K buf isn't enough. 64K seem much better ;-).
Real solution may be an adaptive buffer size in gzfilebuf.