Unconditionally release the reader sem when the previous buffer size was 0
instead of testing for fParserWaiting as there is a race condition between
setting it to true in the parser thread and checking for it in the reader
thread so a release_sem() could be missed causing #4343. To reduce the possible
side effect of needlessly looping through acquire_sem() for too many
unconditionally released sems, we eat them in the parser thread once we're sure
we can't miss an event because of that. Also added a TODO about a memcpy()
optimization as pointed out by Rene.
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32733 a95241bf-73f2-0310-859d-f6bbb57e9c96
media present they will always fail with the no media or media changed errors.
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32732 a95241bf-73f2-0310-859d-f6bbb57e9c96
don't try to use it for media status polling. In those cases we'll assume a
fixed device with no exchangable medias and therefore always return B_OK.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32731 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Code cleanup
* Refactoring (the unit tests still pass)
* Disabled experimental API (BAffineTransform, which is not yet publically
available anyway)
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32723 a95241bf-73f2-0310-859d-f6bbb57e9c96
to the latest direct_buffer_info - it could trash memory before.
* Now handles failed allocations more gracefully.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32719 a95241bf-73f2-0310-859d-f6bbb57e9c96
missing. IIRC, I did write an app way back that used this class...
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32713 a95241bf-73f2-0310-859d-f6bbb57e9c96
not transfered to the commmand, it needs to add references. If not more of
such problems are lurking, it could already fix ticket #4104. Note that you
can build Icon-O-Matic with referencable tracing turned on (generic/support/
Referenceable.cpp). The backtrace in #4104 would specifically hint at a
problem with assigning paths to shape and then unassigning them. Assigning
them didn't add the references that unassigning the paths removed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32707 a95241bf-73f2-0310-859d-f6bbb57e9c96
- UTF-8,
- add copyrights.
We shouldn't need this anymore anyway, devfs handles rescanning on its own...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32705 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added warning about this being experimental API.
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32695 a95241bf-73f2-0310-859d-f6bbb57e9c96
Some (disabled) syslog output.
Renamed buffer_info to fBufferInfo and made it private.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32692 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Reordered methods to group them logically
* Use nothrow version of new when instantiating BCheckBox from archive.
+alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32687 a95241bf-73f2-0310-859d-f6bbb57e9c96
list when booting from CD. Both are removed from the target in the
InstallerFinishScript. This closes ticket #4342.
* Make Installer start in safemode as well.
* Are there any objections to always have the Installer link in the Deskbar?
I see no real reason to leave it out.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32686 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Moved device_manager/settings.cpp to debug/safemode_settings.cpp.
* Removed the somewhat hacky concatenation of kernel settings and safemode
settings in the boot loader. Instead, get_safemode_option() will now fall
back to the kernel settings, if it couldn't spot a setting in the safemode
settings. This allows for more control, and also makes enabling serial
debug output actually work (ie. overriding the kernel settings via safemode
options).
* Adjusted debug_init_post_vm(), and smp_init_other_cpus() to use
get_safemode_boolean().
* Therefore, I added safemode_settings.cpp to the boot loader as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32685 a95241bf-73f2-0310-859d-f6bbb57e9c96
a '\n', the other cutting off the last char.
* *getxattr() is supposed to return the attribute size when a 0 sized buffer
is supplied. Otherwise, if the buffer is too short, it needs to fail with
ERANGE.
* *listxattr(): The buffer pointer wasn't adjusted after each iteration.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32682 a95241bf-73f2-0310-859d-f6bbb57e9c96