#
711e2dc0 |
|
01-Dec-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Adjust all struct dirent creations (again), this time to use offsetof(). The dirent struct is not packed, so offsetof(dirent, d_name) != sizeof(dirent). Thus in order not to waste the alignment bytes (which are significant, on x86_64 at least, sizeof(dirent)==32, but offsetof(...)=26.) This is also the most portable way to handle things, and should work just fine in cross-platform code that has a non-zero-sized d_name.
|
#
9d242fb9 |
|
18-Nov-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
file_systems & Tracker: Do not assume sizeof(dirent) contains 1 byte for the name. At present, it does, but that is an oddity we have preserved from BeOS that the next commit is going to remove. (This commit thus wastes 1 byte without the following one.) Most changes are pretty straightforward: only a +1 is needed, and a few removed from sizing calculations. Some filesystems like UDF originally passed back the length with the \0 included, so they have been adjusted further. UFS2 had some other sizing problems which are also corrected in this commit.
|
#
93845aec |
|
11-Jun-2020 |
Axel Dörfler <axeld@pinc-software.de> |
block_cache: Change signature of *_etc() functions * This allows file systems to retrieve the actual error code on a failure, and report it to the user. * All affected file systems have been adjusted to the API change. This is a binary incompatible change. Change-Id: Id73392aaf9c6cb7d643ff9adcb8bf80f3037874c Reviewed-on: https://review.haiku-os.org/c/haiku/+/2913 Reviewed-by: Axel Dörfler <axeld@pinc-software.de> Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
3e818f20 |
|
07-Jan-2020 |
X512 <danger_mail@list.ru> |
bfs: keep valid dirent->d_reclen in case of bad name Fixes #15607. Change-Id: I96b807f031df4e5c8b5ae17b22a21aed77616b17 Reviewed-on: https://review.haiku-os.org/c/haiku/+/2083 Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
|
#
48063a42 |
|
08-Apr-2017 |
Axel Dörfler <axeld@pinc-software.de> |
BFS: Use MAX_INDEX_KEY_LENGTH for queries. * INODE_FILE_NAME_LENGTH makes no sense here, even though this change is not supposed to actually change anything besides the naming.
|
#
6609c1a0 |
|
08-Apr-2017 |
Axel Dörfler <axeld@pinc-software.de> |
BFS: Removed match empty string logic. * This produces more reliable query results no matter which index gets chosen to run the query. * This fixes the final part of #13254.
|
#
0ed0f5cb |
|
27-Jan-2017 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Handle type 'TIME' as int32 in queries. * This fixes ticket #6734.
|
#
f7917997 |
|
19-Jan-2017 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Query parser needs to filter out escape char. * When escaping operator/quote characters, the character was properly ignored. However, the escape char was left in the string which altered the query. * This fixes bug #10976.
|
#
a2eb6bbd |
|
19-Jan-2017 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Minor cleanup. * Added helper methods for operator/equation characters.
|
#
e5022f23 |
|
19-Jan-2017 |
Axel Dörfler <axeld@pinc-software.de> |
Coding style cleanup, no functional change.
|
#
39f437f7 |
|
04-Jan-2017 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Always check if NodeGetter succeeded. * There were quite a few cases that just assumed that the disk access would succeed. * This also fixes bug #12962.
|
#
de9c0613 |
|
03-Jul-2014 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Use the QueryParserUtils instead of its own copy. * Ingo copied the methods into a shared location, and then obviously "forgot" to let BFS use them. As a side note for Ingo: the complete error GCC reported was "std::fssh_size_t" not defined with the macro wrapper as code location. The actual problem was a "using std::size_t" in some C++ header that accidentally got included after the wrapper. * The shared Query code is not yet used. That'll be done another time. * Renamed BFS_SHELL define to FS_SHELL, such that QueryParserUtils can be used in any file system shell, not just the bfs_shell.
|
#
a1566b06 |
|
06-May-2013 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: removed kernel_cpp.h's new operator. * This fixes bug #9715 from the POV of BFS, ie. the new operator seems to call the constructor on a NULL object on failure.
|
#
7707f8ce |
|
02-Mar-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed warning when compiled with DEBUG=1 but an empty D().
|
#
a54f7dc2 |
|
08-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move B_MIME_STRING_TYPE to <TypeConstants.h>
|
#
3e292446 |
|
08-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move B_MIME_STRING_TYPE to <TypeConstants.h>
|
#
9674328e |
|
24-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Minor style cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42296 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4a5a077f |
|
24-Oct-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Add a private B_ATTR_CHANGE_NOTIFICATION flag to the open query syscall to tell the query to send notifications when an entry attribute changed and the entry stays in the query. Previously you only get created and removed messages, now you can also get updated messages. Only implement it for bfs. Fix copy right. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39131 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ea6fb8b |
|
27-Nov-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Changed the query code again to send B_ENTRY_REMOVED/B_ENTRY_CREATED notifications if an inode in a query result was moved/renamed - this time all the information is correct, though. * While I did not introduce B_ENTRY_MOVED for queries yet, this should make adding it very simple (left as an excercise for the reader ;-)) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34317 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8859eeab |
|
24-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Replaced "%Ld" and "%lld" in printf()s by the new B_PRI* macros to avoid warnings when building with a 64 bit compiler. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34216 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2edf7c46 |
|
20-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* I just checked, and BeOS actually does not update the query this way - this must have been my very own stupid idea. It's removed now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33685 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6f8b6a0d |
|
20-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* When an item was deleted, the order of the attributes decided whether or not one or two remove messages were generated, as the query code produces remove/create notifications on renames. Will check next if that also happens on BeOS, as it doesn't really make much sense. * This should fix the wrong mail count of the Deskbar replicant when you delete mail. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a1a92831 |
|
11-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* This should fix #4760. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33517 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
75f5498c |
|
10-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed two problems of the OR operator (||): if the first of the equations failed to evaluate, the whole term was ignored. Also, if the left term got the higher score (and was thus evaluated first), the second term was never evaluated anymore. This should fix, for example, MDR sometimes not sending out pending mails. * Minor cleanup, improved comments. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33496 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7e14656c |
|
06-Aug-2009 |
Rene Gollent <anevilyak@gmail.com> |
Patch by Blub\0: fix bfs build with DEBUG defined on gcc4. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32168 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a60fd72 |
|
06-Aug-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Replaced the Inode::GetTree() method with a simple getter - the tree is always created for directories since quite some time now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f5d5ca18 |
|
30-Jul-2008 |
Axel Dörfler <axeld@pinc-software.de> |
Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26687 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
03fa417b |
|
07-Jul-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Removed the home-brewn locking classes in BFS besides the read/write lock (for now). * Inode::fSmallDataLock is now a recursive_lock, Journal::fLock is now a recursive_lock, too, Journal::fEntriesLock is now a mutex, as is BPlusTree::fIteratorLock. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26298 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c6f752c0 |
|
06-Mar-2008 |
Axel Dörfler <axeld@pinc-software.de> |
Corrected patch to fix warnings when compiled with GCC 4, thanks Vasilis! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24279 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c391f84b |
|
26-Apr-2007 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Prepared the BFS sources to be used with the new FS shell: - Moved all inclusions of system headers into a new system_dependencies.h header, which conditionally either includes these or the FS shell headers. - Fixed compiler warnings related to printf-like functions (int32 is int, not long on non-BeOS platforms). * Build a new bfs_shell. Compiles and links, but does nothing ATM. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20860 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b631d2f4 |
|
27-Sep-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed the bug Bruno observed (and worked around) in a safer way - the node data was not written back before GetNextSmallData() was called (which let the region appear empty even though it wasn't). * I left the shortcut in case of the "name" attribute in there, because it should be a bit faster. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18949 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7676dedf |
|
21-Sep-2006 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
Fixed live query notification for new files being created. It seems using Inode::GetName() in the middle of a transaction is not a good idea. Axel, can you check if we really need to keep the old code there as it is now or if we can completelly remove it? I think we can but maybe there is some case I did not consider. // We have to special-case the name attribute here because // Inode::Getname will return NULL as we are in the middle // of the transaction at this point when a new file is // created. We just use newKey which happens to contain // the new file name anyway. // // TODO: Check if there is any sense in leaving this if // statement as it is or if we can completelly remove the // original code. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18909 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b68efdca |
|
18-Oct-2005 |
Axel Dörfler <axeld@pinc-software.de> |
We now use the kernel's Stack class instead of our own copy. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14417 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0d3a7fe9 |
|
02-Feb-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Moved over to the new live query notification API. Fixed a stupid bug in Query::LiveUpdate() that prevented it to work correctly before: instead of the file name, the attribute value was passed to send_notification(). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11225 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
46795440 |
|
12-Dec-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Added Query::Rewind() method - not yet tested. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10404 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
04c79aa1 |
|
19-Nov-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Removed KEEP_WRONG_DIRENT_RECLEN support. Fixed endian issue. Changed due to new inode code. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10052 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dcceaee3 |
|
07-Jun-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Some changes due to the fsproto.h/fs_interface.h tandem. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7822 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
feec20d6 |
|
07-May-2004 |
Axel Dörfler <axeld@pinc-software.de> |
It's now <util/kernel_cpp.h> rather than <kernel_cpp.h>. Forgot to commit that... git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7442 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
36660c5e |
|
29-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Switched from direct get_vnode() usage to the Vnode class. Now acquires the volume lock always before get_vnode() is called as long as UNSAFE_GET_VNODE is defined (which now is by default). May cause some unwanted side-effects; it still has to be thorougly tested. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6424 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
54343bbc |
|
25-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Switched to kernel_cpp.h/cpp. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6291 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a49a098 |
|
07-Nov-2003 |
Nathan Whitehorn <nwhitehorn@nowhere.fake> |
Bunches of changes to make mwcc like the code. I also coded an _atomic_set() and _atomic_test_and_set() for PowerPC. Of course, there's already one in the kernel tree, but mine's better. :P Now builds (and works, after a fashion) on R5 PowerPC. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5280 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
09ed3db8 |
|
25-May-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Some minor style changes/clean ups. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3328 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4c94430a |
|
24-Feb-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Added a virtual desctructor for the Term base class, and added the virtual keyword to the ones of its subclasses as well. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2842 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1241a215 |
|
29-Jan-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Only queries non-indexed attributes if the B_QUERY_NON_INDEXED flag was passed during construction of the Query. Only live queries are now registered with the BVolume (for now - since Be's kernel doesn't free queries when an app has crashed, we might want to have a work-around for that one day [or just a new kernel :)]). Small cleanups. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2598 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d9f08d80 |
|
10-Jan-2003 |
Axel Dörfler <axeld@pinc-software.de> |
The empty string ("", length 0) will now be replaced with ("", length 1) in queries, to let the BPlusTree::Find() method search for it (there can't be any keys in the tree with length 0). That means that the query 'META:url=""' will now return all files where the attribute "META:url" is present but empty. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2401 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
006928f8 |
|
29-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed the bug in the query code: B_MIME_STRING_TYPE was not correctly translated into B_STRING_TYPE for the key comparison (it was translated but not saved under the new type). compareKeys() will now return -1 if it didn't know the type to compare. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2121 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c0f2928e |
|
25-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Now uses Inode::GetName() where appropriate. Fixed a bigger race condition when matching against the name index. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2085 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a3d39a9e |
|
06-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Equation::Match() unlocked the small data section too soon (the contents could be changed before or during the comparison). Some style changes. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1861 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2b5451f1 |
|
16-Sep-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Added private non-implemented copy constructor and assignment operators for many classes for the sake of completeness. Added a Transaction::IsStarted() method to not let it look like as if the transaction is started more than once. Changes made after suggestions from Mike Nordell, again :-) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1067 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ba04be1d |
|
19-Aug-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed the dirent.d_reclen calculation - define KEEP_WRONG_DIRENT_RECLEN to enable the old and compatible behaviour (on BeOS R5, all available file systems seem to do that wrong). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@826 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c42ee134 |
|
07-Aug-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Initial revision git-svn-id: file:///srv/svn/repos/haiku/trunk/current@639 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
de9c0613398645390b8d450089051b2888e2e15b |
|
03-Jul-2014 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: Use the QueryParserUtils instead of its own copy. * Ingo copied the methods into a shared location, and then obviously "forgot" to let BFS use them. As a side note for Ingo: the complete error GCC reported was "std::fssh_size_t" not defined with the macro wrapper as code location. The actual problem was a "using std::size_t" in some C++ header that accidentally got included after the wrapper. * The shared Query code is not yet used. That'll be done another time. * Renamed BFS_SHELL define to FS_SHELL, such that QueryParserUtils can be used in any file system shell, not just the bfs_shell.
|
#
a1566b06b7b53d14fa53c169b0989925c54fd69d |
|
06-May-2013 |
Axel Dörfler <axeld@pinc-software.de> |
bfs: removed kernel_cpp.h's new operator. * This fixes bug #9715 from the POV of BFS, ie. the new operator seems to call the constructor on a NULL object on failure.
|
#
7707f8cec2f8ef5773c9e298879f1e96251e8259 |
|
02-Mar-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed warning when compiled with DEBUG=1 but an empty D().
|
#
a54f7dc2506cd315ef499129b1f44ec96e8c1e10 |
|
08-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move B_MIME_STRING_TYPE to <TypeConstants.h>
|
#
3e29244600395a0cea91cfc0a0323016fc0f3253 |
|
08-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move B_MIME_STRING_TYPE to <TypeConstants.h>
|
#
9674328ebe9b3c9e903b301294c04a99ad57ca07 |
|
24-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Minor style cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42296 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4a5a077ff79e1b1ffb2571fdfc5ea8218a64196c |
|
24-Oct-2010 |
Clemens Zeidler <clemens.zeidler@googlemail.com> |
Add a private B_ATTR_CHANGE_NOTIFICATION flag to the open query syscall to tell the query to send notifications when an entry attribute changed and the entry stays in the query. Previously you only get created and removed messages, now you can also get updated messages. Only implement it for bfs. Fix copy right. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39131 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ea6fb8bd4961cdd6177dcfa90a14ec09c94c3e4 |
|
27-Nov-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Changed the query code again to send B_ENTRY_REMOVED/B_ENTRY_CREATED notifications if an inode in a query result was moved/renamed - this time all the information is correct, though. * While I did not introduce B_ENTRY_MOVED for queries yet, this should make adding it very simple (left as an excercise for the reader ;-)) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34317 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8859eeab5349da39ee9972ee0943919740754b77 |
|
24-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Replaced "%Ld" and "%lld" in printf()s by the new B_PRI* macros to avoid warnings when building with a 64 bit compiler. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34216 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2edf7c468768196178cdd07aae92b50c0a026a8d |
|
20-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* I just checked, and BeOS actually does not update the query this way - this must have been my very own stupid idea. It's removed now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33685 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6f8b6a0dfd4275b717a40688ecdf4729feb9f8a5 |
|
20-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* When an item was deleted, the order of the attributes decided whether or not one or two remove messages were generated, as the query code produces remove/create notifications on renames. Will check next if that also happens on BeOS, as it doesn't really make much sense. * This should fix the wrong mail count of the Deskbar replicant when you delete mail. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33683 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a1a928319d2c7720129a6e815f70c5c57b52aa87 |
|
11-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* This should fix #4760. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33517 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
75f5498c0a862f46f2db237ed854f9943d584502 |
|
10-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed two problems of the OR operator (||): if the first of the equations failed to evaluate, the whole term was ignored. Also, if the left term got the higher score (and was thus evaluated first), the second term was never evaluated anymore. This should fix, for example, MDR sometimes not sending out pending mails. * Minor cleanup, improved comments. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33496 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7e14656cf7317b55847bf8c721542b4bfa9ce030 |
|
06-Aug-2009 |
Rene Gollent <anevilyak@gmail.com> |
Patch by Blub\0: fix bfs build with DEBUG defined on gcc4. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32168 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a60fd72cf588ed0d25028da354261b4d8409c08 |
|
06-Aug-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Replaced the Inode::GetTree() method with a simple getter - the tree is always created for directories since quite some time now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32158 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f5d5ca18f6c9f396e680cda176495527e8e0a59d |
|
30-Jul-2008 |
Axel Dörfler <axeld@pinc-software.de> |
Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26687 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
03fa417b706f63305263982a61eb1002e6ff9d96 |
|
07-Jul-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Removed the home-brewn locking classes in BFS besides the read/write lock (for now). * Inode::fSmallDataLock is now a recursive_lock, Journal::fLock is now a recursive_lock, too, Journal::fEntriesLock is now a mutex, as is BPlusTree::fIteratorLock. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26298 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c6f752c0c5f38752dedaee4f781bdf23de395bdb |
|
06-Mar-2008 |
Axel Dörfler <axeld@pinc-software.de> |
Corrected patch to fix warnings when compiled with GCC 4, thanks Vasilis! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24279 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c391f84b2c732398288276bc8354ac4060dc5a4d |
|
26-Apr-2007 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Prepared the BFS sources to be used with the new FS shell: - Moved all inclusions of system headers into a new system_dependencies.h header, which conditionally either includes these or the FS shell headers. - Fixed compiler warnings related to printf-like functions (int32 is int, not long on non-BeOS platforms). * Build a new bfs_shell. Compiles and links, but does nothing ATM. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20860 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b631d2f40d9e9b66e90533ad6e7595380a5dcda7 |
|
27-Sep-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* Fixed the bug Bruno observed (and worked around) in a safer way - the node data was not written back before GetNextSmallData() was called (which let the region appear empty even though it wasn't). * I left the shortcut in case of the "name" attribute in there, because it should be a bit faster. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18949 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7676dedf5711cebc9db288079882d085365a2223 |
|
21-Sep-2006 |
Bruno G. Albuquerque <bga@bug-br.org.br> |
Fixed live query notification for new files being created. It seems using Inode::GetName() in the middle of a transaction is not a good idea. Axel, can you check if we really need to keep the old code there as it is now or if we can completelly remove it? I think we can but maybe there is some case I did not consider. // We have to special-case the name attribute here because // Inode::Getname will return NULL as we are in the middle // of the transaction at this point when a new file is // created. We just use newKey which happens to contain // the new file name anyway. // // TODO: Check if there is any sense in leaving this if // statement as it is or if we can completelly remove the // original code. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18909 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b68efdcaa7f9c148cbf77b6e8bf60978f0bd5978 |
|
18-Oct-2005 |
Axel Dörfler <axeld@pinc-software.de> |
We now use the kernel's Stack class instead of our own copy. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14417 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0d3a7fe9b1feec64fc4320959e6b79f5f2b2378b |
|
02-Feb-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Moved over to the new live query notification API. Fixed a stupid bug in Query::LiveUpdate() that prevented it to work correctly before: instead of the file name, the attribute value was passed to send_notification(). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11225 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
467954408f7d4c187469bf62d96bfffe47cf1d0f |
|
12-Dec-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Added Query::Rewind() method - not yet tested. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10404 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
04c79aa160f4b66db3534044ceff115e9ba4705e |
|
19-Nov-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Removed KEEP_WRONG_DIRENT_RECLEN support. Fixed endian issue. Changed due to new inode code. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10052 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dcceaee3bcb5d7170df3e42857b69ff3e896392b |
|
07-Jun-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Some changes due to the fsproto.h/fs_interface.h tandem. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7822 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
feec20d64b8c5be705c76f8ac957408c7c95df97 |
|
07-May-2004 |
Axel Dörfler <axeld@pinc-software.de> |
It's now <util/kernel_cpp.h> rather than <kernel_cpp.h>. Forgot to commit that... git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7442 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
36660c5e9996909146d3872baa555115357f9267 |
|
29-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Switched from direct get_vnode() usage to the Vnode class. Now acquires the volume lock always before get_vnode() is called as long as UNSAFE_GET_VNODE is defined (which now is by default). May cause some unwanted side-effects; it still has to be thorougly tested. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6424 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
54343bbc2d49684c7d85169ba9a4bab7fc53fac8 |
|
25-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Switched to kernel_cpp.h/cpp. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6291 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1a49a0986bd50ef30d406b4f5001a0784d344015 |
|
07-Nov-2003 |
Nathan Whitehorn <nwhitehorn@nowhere.fake> |
Bunches of changes to make mwcc like the code. I also coded an _atomic_set() and _atomic_test_and_set() for PowerPC. Of course, there's already one in the kernel tree, but mine's better. :P Now builds (and works, after a fashion) on R5 PowerPC. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5280 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
09ed3db89a7892a5fd9f4d168c17d8efb2105c5b |
|
25-May-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Some minor style changes/clean ups. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3328 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4c94430a7e77ff62e708da0231ec9bd0c58489ba |
|
24-Feb-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Added a virtual desctructor for the Term base class, and added the virtual keyword to the ones of its subclasses as well. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2842 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1241a21542d419b9032494814abffd1873653d2f |
|
29-Jan-2003 |
Axel Dörfler <axeld@pinc-software.de> |
Only queries non-indexed attributes if the B_QUERY_NON_INDEXED flag was passed during construction of the Query. Only live queries are now registered with the BVolume (for now - since Be's kernel doesn't free queries when an app has crashed, we might want to have a work-around for that one day [or just a new kernel :)]). Small cleanups. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2598 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d9f08d808d1ab6e7101467b242ab19fc539e00a1 |
|
10-Jan-2003 |
Axel Dörfler <axeld@pinc-software.de> |
The empty string ("", length 0) will now be replaced with ("", length 1) in queries, to let the BPlusTree::Find() method search for it (there can't be any keys in the tree with length 0). That means that the query 'META:url=""' will now return all files where the attribute "META:url" is present but empty. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2401 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
006928f81b2ab30d54835dbc9964c04c07d392d7 |
|
29-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed the bug in the query code: B_MIME_STRING_TYPE was not correctly translated into B_STRING_TYPE for the key comparison (it was translated but not saved under the new type). compareKeys() will now return -1 if it didn't know the type to compare. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2121 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c0f2928e7dc1592b5b5d842869f660eede746dab |
|
25-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Now uses Inode::GetName() where appropriate. Fixed a bigger race condition when matching against the name index. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2085 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a3d39a9e8adec7be7a0f41a6bf66d6d709ee64d4 |
|
06-Nov-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Equation::Match() unlocked the small data section too soon (the contents could be changed before or during the comparison). Some style changes. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1861 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2b5451f1642e72a8bd34ccabac5c0b670f09f664 |
|
16-Sep-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Added private non-implemented copy constructor and assignment operators for many classes for the sake of completeness. Added a Transaction::IsStarted() method to not let it look like as if the transaction is started more than once. Changes made after suggestions from Mike Nordell, again :-) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1067 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ba04be1db056769234a3b572138e5a7b916adb4d |
|
19-Aug-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed the dirent.d_reclen calculation - define KEEP_WRONG_DIRENT_RECLEN to enable the old and compatible behaviour (on BeOS R5, all available file systems seem to do that wrong). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@826 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c42ee13401be80c431846910959d587949a1ad10 |
|
07-Aug-2002 |
Axel Dörfler <axeld@pinc-software.de> |
Initial revision git-svn-id: file:///srv/svn/repos/haiku/trunk/current@639 a95241bf-73f2-0310-859d-f6bbb57e9c96
|