#
2532a287 |
|
23-Nov-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Avoid using unions for LongDirEntry. GCC still assumes that the dirent has no data past the end for some scenarios here and still mis-optimizes things. Therefore, drop the usages of unions altogether, and instead use a casted character array. Additionally, use B_FILE_NAME_LENGTH for the array, not B_PATH_NAME_LENGTH, and make sure to add 1 for the NULL terminator.
|
#
8f03af00 |
|
18-Nov-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Storage: Rework LongDirEntry to be a union. Our dirent structure is "slim": it has a flexible-length array at the end which must be allocated to whatever size the consumer wants. However, we use [1] there and not [0] or [], which meant GCC thought it was not a flexible-length array, and so it optimized various string accesses that it assumed must be always false. Among these was BDirectory's check for "." and "..", and so that resulted in infinite loops. When changing our dirent structure to a proper FLA instead of [1], GCC then throws errors on LongDirEntry as it has data "after" the FLA; which is what we want, but there is no way to tell GCC that. So now we use a union instead, which is the proper way to statically allocate a FLA. This is part of #17389, but the real fix requires changing our dirent structure, which is coming in a separate commit.
|
#
3db31932 |
|
07-Dec-2016 |
John Scipione <jscipione@gmail.com> |
BNode: CID 602323 explicitly ignore fCStatus return value in ctor This is what it this whole push was all about
|
#
f901d7f5 |
|
10-Dec-2016 |
Adrien Destugues <pulkomandy@pulkomandy.tk> |
Revert BNode changes resulting in non bootable system Revert "BNode: CID 602323 explicitly ignore fCStatus return value in ctor" Revert "BNode: Set fCStatus in SetTo() explicitly" Revert "BNode: Style fixes, see below for details" This reverts commit ede463195dee8536628c54ee6a4a888c0683a83f. This reverts commit 6e3445098abd1d1e4cca69ba2d959fe74fe2cb1b. This reverts commit 89c0b71c9a5acdbdb4543f025f64937bfbd893e3. We are due for a release soon. Please keep things working.
|
#
ede46319 |
|
07-Dec-2016 |
John Scipione <jscipione@gmail.com> |
BNode: CID 602323 explicitly ignore fCStatus return value in ctor This is what it this whole push was all about
|
#
6e344509 |
|
07-Dec-2016 |
John Scipione <jscipione@gmail.com> |
BNode: Set fCStatus in SetTo() explicitly instead of setting it in _SetTo() and then again in SetTo() fCStatus could be set even fewer times but this is a good compromise (logically, performance wise it is not an issue). Update copyright, add myself to Authors
|
#
89c0b71c |
|
07-Dec-2016 |
John Scipione <jscipione@gmail.com> |
BNode: Style fixes, see below for details Remove superfluous parens Rename result variable to bytesWritten Sync() Unwrap ternary style fix (for consistency) * Shouldn't this return fCStatus instead of B_FILE ERROR? * BeBook says "returning B_OK on success and an appropriate error message otherwise." * Has returned B_FILE_ERROR since "it is accomplished ..." Rename result variable to bytesWritten (again) Remove superfluous space explictly cast status_t to ssize_t Remove superfluous parens, remove space, add newline Explicitly cast status_t to ssize_t (again) WriteAttrString() cleanup * rename error to result * rename sizeWritten to bytesWritten (consistency and clarity) * check if error cede from WriteAttr and cast to status_t * > not entirely style but functionaly same * if length is different then written return B_FILE_ERROR * > not a style change but a very minor functional change * add some comments Tiny documentation fix precede vars with \a More style fixes * Rename error to result * Put parens around conditional of ternary instead of whole thing * Compare against NULL explicitly * Don't set fCStatus here, we're going to set it in the calling function instead * > note that Unset() sets fCStatus to B_NO_INIT but that's ok 80 char limit style fix More style fixes and don't set fCStatus * remove superfluous parens * compare ref to NULL explicitly * > Also don't set fCStatus here since we will do that in calling function Unset() sets fCStatus to B_NO_INIT but that's ok Unwrap ternary style fix (consistency) Rename error to result (again)
|
#
a30a4a41 |
|
18-Jun-2014 |
John Scipione <jscipione@gmail.com> |
Style fixes to Storage Kit classes. No functional changes intended. * Some variable renaming for clarity and consistency. * Pointer style fixes. * Added private method documentation back to cpp files for some methods.
|
#
040a8141 |
|
05-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add node_ref::operator < Moved from VirtualDirectoryManager. Defining the operator static doesn't work with gcc 4 and it's useful to have globally available anyway.
|
#
2d8ec1d5 |
|
06-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add the obvious node_ref constructor
|
#
7f1880dc |
|
29-Oct-2011 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
Apply patch for ticket #8008: * Remove BNode documentation from the source code and add it to Node.dox * Rewrite some of the existing documents git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42986 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f1383bbf |
|
10-Aug-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed build; should have been part of r42620. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42621 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
32bf3ca5 |
|
23-Sep-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Added GetStat() symbol when compiling the test environment on GCC4. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33249 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2c69b5b6 |
|
19-Aug-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Made the libbe_test environment basically working under Haiku - to actually make it work, one would need to use versioning for all libbe symbols. This is worth an 8k price per file that links against libbe.so, so I didn't want to commit this as is. An alternative to this solution would be to write a separate application that is responsible for the app_server's window. Comments welcome. * Removed BeOS compatbility of the libbe_test stuff. * Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is now called libbe_test.so, haiku_registrar is now test_registrar, etc. * This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS compatibility should be removed, but I don't want to make Alexandre more work in his branch, and it's not urgent at all). * Replaced the former "run" scripts for the test environment with a single run script (see updated NOTES file). * Removed the libbe_test target from some applications - this was only to help developing them under BeOS, and is thus no longer necessary. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32521 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
42c9b01a |
|
25-May-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* {BEntry,BNode}::GetStat() were still passing the BeOS struct stat size to the syscall. Anything beyond st_mtim was therefore not filled in. Fixes the incorrectly shown creation times in Tracker. * The BStatable::GetStat() solution was not sufficient yet. We still have to provide the old GetStat() symbol for BNode and BEntry, since those could be used by old applications/libraries. We also still have to implement the old GetStat() slots in the derived classes, but don't need to implement it in the base class (was purely virtual before and is private now). * The old BStatable::_OhSoStatable1() slot function was not implemented correctly. Calling the virtual function at the vtable slot obviously results in an infinite recursion. The correct implementation would make use of the Perform() method, but Be didn't provide one for BStatable, so we have to use the old GetStat() method. Fixed #3960. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30851 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf7e57ef |
|
06-Jun-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Small coding style fix. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25839 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3dd2f066 |
|
25-Apr-2008 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
Shame on me. The node is actually unlocked in close_fd(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25159 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8ce1d517 |
|
25-Apr-2008 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
From the BeBook: Node Locking Another feature provided by the BNode class is "node locking": Through BNode's Lock() function you can restrict access to the node. The lock is removed when Unlock() is called, or when the BNode object is deleted. There is still something wrong with locking though. For example, it looks like WriteAttr() fails on the node when we lock it (File Busy) but it should not. The lock acquirer should be able to call WriteAttr() on it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
085296e8 |
|
12-Sep-2007 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
R5's WriteAttrString() also writes the terminating null. So does ours now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22224 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7b3d36e5 |
|
21-Jun-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* BEntry::GetStat() and BNode::GetStat() used sizeof(struct stat) for the kernel syscall, but they could not know if R5 code called them (in which case the stat size has a different size). We now always only return the R5 stat structure here. This fixes bug #420. We might want to find a different solution to this problem, though. * Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX), but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX constants to limits.h. * Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist in POSIX specs, but we (intentionally) break source compatibility here). * Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku. * Removed OpenBeOS namespace stuff from the files I touched. * Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header is beyond me. * Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
509798f9 |
|
30-Dec-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15743 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3af4214a |
|
01-Feb-2005 |
Axel Dörfler <axeld@pinc-software.de> |
_kern_open[_entry_ref]() now replaces the _kern_create[_entry_ref]() calls. That allows BFile to actually create files (it didn't use that syscall at all before). Also fixed setting the permission bits of the newly created file depending on umask (the __gUmask variable should probably be moved into a separate header). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11208 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b06942c6 |
|
13-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
All internally used FDs are now set to O_CLOEXEC. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10715 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
08d0162e |
|
12-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Don't retry opening the node read-only, if opening read-write failed with B_ENTRY_NOT_FOUND. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10697 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a368fecb |
|
11-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
When opening the node O_RDWR failed, we try again O_RDONLY, but we did that only, if the returned error code was B_READ_ONLY_DEVICE or B_PERMISSION_DENIED. Some FS return other error codes though, so we are completely ignorant now and always retry on error. Maybe we shouldn't for obvious cases like B_ENTRY_NOT_FOUND. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10679 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
db10640d |
|
28-Aug-2004 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Got rid of the Storage Kit's kernel abstraction layer, which was unfortunately quite slow and made some things more complicated than they needed to be. Implemented a few missing things (e.g. BSymLink and node locking). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8694 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
17e6de7a |
|
03-Aug-2003 |
shadow303 <shadow303@nowhere.fake> |
gcc 3 fixes git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1eed0e99 |
|
21-May-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added missing inclusion of <unistd.h>. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3286 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c44680a |
|
11-Feb-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Renamed the private virtual slots back to their original (R5) names. We would break binary compatibility otherwise, or at least had to do some additional work to maintain nevertheless. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2af60585 |
|
09-Feb-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added two open() versions to our kernel_interface, that re-try opening read-only, if desired. They are now used in BDirectory and BNode, which formerly failed on read-only devices. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2677 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
480ed2e7 |
|
07-Oct-2002 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Fixed bug in ReadAttrString(): The resulting string was one character longer, when the string in the attribute was null terminated. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1437 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a17c3cf |
|
23-Sep-2002 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Dealt with the *_LENGTH+1 issue: Removed all "+1"s in buffer allocations and adjusted checks etc. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1131 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
09d84e61 |
|
12-Aug-2002 |
Tyler Dauwalder <tylerdauwalder@nowhere.fake> |
+ Changed StorageKit namespace to BPrivate::Storage + Changed Sniffer namespace to BPrivate::Storage::Sniffer git-svn-id: file:///srv/svn/repos/haiku/trunk/current@714 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
52a38012 |
|
08-Jul-2002 |
ejakowatz <ejakowatz@nowhere.fake> |
It is accomplished ... git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a30a4a41f948ebb03b95dab065a27a584ac0c97a |
|
18-Jun-2014 |
John Scipione <jscipione@gmail.com> |
Style fixes to Storage Kit classes. No functional changes intended. * Some variable renaming for clarity and consistency. * Pointer style fixes. * Added private method documentation back to cpp files for some methods.
|
#
040a81419dda83d1014e9dc94936a4cb3f027303 |
|
05-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add node_ref::operator < Moved from VirtualDirectoryManager. Defining the operator static doesn't work with gcc 4 and it's useful to have globally available anyway.
|
#
2d8ec1d502634cf7d3fffc50bae54c5019a807fd |
|
06-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add the obvious node_ref constructor
|
#
7f1880dc0ed378e10f46bf7dd6d697dcf9ffd9fe |
|
29-Oct-2011 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
Apply patch for ticket #8008: * Remove BNode documentation from the source code and add it to Node.dox * Rewrite some of the existing documents git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42986 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f1383bbf4d8d0eb598c3d504ab5e6a4f67d14624 |
|
10-Aug-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed build; should have been part of r42620. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42621 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
32bf3ca5f87ff7fb8d6a27baac551a1904c1baec |
|
23-Sep-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Added GetStat() symbol when compiling the test environment on GCC4. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33249 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2c69b5b6c0e7b481a0c43366a1942a6055cbb864 |
|
19-Aug-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Made the libbe_test environment basically working under Haiku - to actually make it work, one would need to use versioning for all libbe symbols. This is worth an 8k price per file that links against libbe.so, so I didn't want to commit this as is. An alternative to this solution would be to write a separate application that is responsible for the app_server's window. Comments welcome. * Removed BeOS compatbility of the libbe_test stuff. * Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is now called libbe_test.so, haiku_registrar is now test_registrar, etc. * This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS compatibility should be removed, but I don't want to make Alexandre more work in his branch, and it's not urgent at all). * Replaced the former "run" scripts for the test environment with a single run script (see updated NOTES file). * Removed the libbe_test target from some applications - this was only to help developing them under BeOS, and is thus no longer necessary. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32521 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
42c9b01aa624559ecb44976c02d02f3a1b355ae9 |
|
25-May-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* {BEntry,BNode}::GetStat() were still passing the BeOS struct stat size to the syscall. Anything beyond st_mtim was therefore not filled in. Fixes the incorrectly shown creation times in Tracker. * The BStatable::GetStat() solution was not sufficient yet. We still have to provide the old GetStat() symbol for BNode and BEntry, since those could be used by old applications/libraries. We also still have to implement the old GetStat() slots in the derived classes, but don't need to implement it in the base class (was purely virtual before and is private now). * The old BStatable::_OhSoStatable1() slot function was not implemented correctly. Calling the virtual function at the vtable slot obviously results in an infinite recursion. The correct implementation would make use of the Perform() method, but Be didn't provide one for BStatable, so we have to use the old GetStat() method. Fixed #3960. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30851 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf7e57ef102a177b46f2f1d4c299f74e5d74f2c0 |
|
06-Jun-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Small coding style fix. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25839 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3dd2f0667e5badc80466f2d929639521810b8789 |
|
25-Apr-2008 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
Shame on me. The node is actually unlocked in close_fd(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25159 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8ce1d51721b5d7a01ba89d6a25f1335fa3e0cb26 |
|
25-Apr-2008 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
From the BeBook: Node Locking Another feature provided by the BNode class is "node locking": Through BNode's Lock() function you can restrict access to the node. The lock is removed when Unlock() is called, or when the BNode object is deleted. There is still something wrong with locking though. For example, it looks like WriteAttr() fails on the node when we lock it (File Busy) but it should not. The lock acquirer should be able to call WriteAttr() on it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
085296e86c4cc0b575f88ffb636fa9c881df5e51 |
|
12-Sep-2007 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
R5's WriteAttrString() also writes the terminating null. So does ours now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22224 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7b3d36e5aa0992fc1a69816d2f90e2e6be56821e |
|
21-Jun-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* BEntry::GetStat() and BNode::GetStat() used sizeof(struct stat) for the kernel syscall, but they could not know if R5 code called them (in which case the stat size has a different size). We now always only return the R5 stat structure here. This fixes bug #420. We might want to find a different solution to this problem, though. * Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX), but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX constants to limits.h. * Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist in POSIX specs, but we (intentionally) break source compatibility here). * Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku. * Removed OpenBeOS namespace stuff from the files I touched. * Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header is beyond me. * Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
509798f986beffe7c1e6a6f62a90bf07486574fa |
|
30-Dec-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15743 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3af4214aeb7eae0e7ebb5938fa1619800b15a958 |
|
01-Feb-2005 |
Axel Dörfler <axeld@pinc-software.de> |
_kern_open[_entry_ref]() now replaces the _kern_create[_entry_ref]() calls. That allows BFile to actually create files (it didn't use that syscall at all before). Also fixed setting the permission bits of the newly created file depending on umask (the __gUmask variable should probably be moved into a separate header). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11208 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b06942c6049d167350529b36a6f7f559383a764f |
|
13-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
All internally used FDs are now set to O_CLOEXEC. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10715 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
08d0162ea24e1a5264794e0e36a1a6f9f010780c |
|
12-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Don't retry opening the node read-only, if opening read-write failed with B_ENTRY_NOT_FOUND. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10697 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a368fecb8d8e493724a12d9a943b59e71e74e5f1 |
|
11-Jan-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
When opening the node O_RDWR failed, we try again O_RDONLY, but we did that only, if the returned error code was B_READ_ONLY_DEVICE or B_PERMISSION_DENIED. Some FS return other error codes though, so we are completely ignorant now and always retry on error. Maybe we shouldn't for obvious cases like B_ENTRY_NOT_FOUND. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10679 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
db10640de90f7f9519ba2da9577b7c1af3c64f6b |
|
28-Aug-2004 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Got rid of the Storage Kit's kernel abstraction layer, which was unfortunately quite slow and made some things more complicated than they needed to be. Implemented a few missing things (e.g. BSymLink and node locking). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8694 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
17e6de7a37c5c61f45eb724de108daa70905cb8f |
|
03-Aug-2003 |
shadow303 <shadow303@nowhere.fake> |
gcc 3 fixes git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1eed0e99e9940bc59ee16a6161cce6ba91ad2ada |
|
21-May-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added missing inclusion of <unistd.h>. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3286 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c44680a3623191910d7fb6617ff897583f2ef60 |
|
11-Feb-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Renamed the private virtual slots back to their original (R5) names. We would break binary compatibility otherwise, or at least had to do some additional work to maintain nevertheless. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2af6058585a93f47f4c2bfa98929fc9893174f41 |
|
09-Feb-2003 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added two open() versions to our kernel_interface, that re-try opening read-only, if desired. They are now used in BDirectory and BNode, which formerly failed on read-only devices. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2677 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
480ed2e7f3285187497f21d022f1dc95e7407928 |
|
07-Oct-2002 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Fixed bug in ReadAttrString(): The resulting string was one character longer, when the string in the attribute was null terminated. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1437 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a17c3cfac5f2463b41b3f233975a2904ef10135 |
|
23-Sep-2002 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Dealt with the *_LENGTH+1 issue: Removed all "+1"s in buffer allocations and adjusted checks etc. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1131 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
09d84e61b6c2629d253dce1e7d7e944943d3e40e |
|
12-Aug-2002 |
Tyler Dauwalder <tylerdauwalder@nowhere.fake> |
+ Changed StorageKit namespace to BPrivate::Storage + Changed Sniffer namespace to BPrivate::Storage::Sniffer git-svn-id: file:///srv/svn/repos/haiku/trunk/current@714 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
52a380120846174213ccce9c4aab0dda17c72083 |
|
08-Jul-2002 |
ejakowatz <ejakowatz@nowhere.fake> |
It is accomplished ... git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96
|