+ Now supports Joliet volume names
+ Root directory record information is dumped out
along with each primary and supplementary volume
descriptor when TRACE is turned on.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2868 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also fixed missing return codes in BufferPool::ReleaseBuffer() and Journal::WriteLogEntry().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2845 a95241bf-73f2-0310-859d-f6bbb57e9c96
we are explicitely compiling with -fno-exceptions, there shouldn't be any problems.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2844 a95241bf-73f2-0310-859d-f6bbb57e9c96
Fixed many warnings (due to -Wall). Some style cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2843 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Almost completely new, more robust cdrom session module.
Should handle data and audio sessions correctly in almost
every case, now (certain things like Video CDs are still not
handled in a 100% desirable fashion).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2733 a95241bf-73f2-0310-859d-f6bbb57e9c96
Add again the load_driver_symbols() export into our KernelExport.h, as it's expected
by many kernel add-ons (drivers, modules)... the network ones, for a start.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2672 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
effect anyway.
Now passes the flags parameter on to the Query.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2597 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added functionality to convert a PartitionMap to a string and vice versa.
* get_partitioning_parameters() implemented, but not tested.
* The code also needed by the GUI add-on now lives in separate files.
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2591 a95241bf-73f2-0310-859d-f6bbb57e9c96
identify_module() hook.
* get_nth_session_module() returns the name of the partition module.
* There is no special handling for CDs anymore. The session modules are
tried on any device now.
* Fixed a bug in get_buffer() causing a crash when reading from disk
failed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2555 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
in the same directory - in this case, we will return B_OK (as nothing has
to be done to fulfill the request), instead of B_BAD_VALUE which would
be thrown later in the process.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2400 a95241bf-73f2-0310-859d-f6bbb57e9c96
Configuration Manager, once this is implemented.
Needed for the "listdev" command and the Devices preferences application.
Not tested!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2339 a95241bf-73f2-0310-859d-f6bbb57e9c96
+ Fixed an error with disk_scanner_get_partition_fs_info() that was causing
the fs module to not be unloaded when identification succeeded. The next
time around, get_module() was returning B_OK, by the module pointer was
being set to NULL. I'm not sure if this is the expected behaviour of the
emulator, so we may want to investigate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2286 a95241bf-73f2-0310-859d-f6bbb57e9c96
The correctness of max_number_of_levels is now checked in Find().
Added a class NodeChecker which checks the integrity of the specified node
when the object is destructed (via new method bplustree_node::CheckIntegrity());
now used in Remove() and Insert().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2169 a95241bf-73f2-0310-859d-f6bbb57e9c96
to B_STRING_TYPE for the lower layers - should probably find a better solution
to handle this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2166 a95241bf-73f2-0310-859d-f6bbb57e9c96
output turned on.
bfs_open_dir() now accepts again all containers, because bfs_open_index_dir()
is using it, too (too bad when you forgot about your own code).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2122 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
Most probably these are used by the kernel to identify changes in a shared
library or something like this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2088 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
The inode is now locked in bfs_close() (when the indices are updated).
Moved the special cases for INODE_NO_CACHE and INODE_CHKBFS_RUNNING into
bfs_free_cookie() - should probably do that with the index update as well.
Updated some comments.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2084 a95241bf-73f2-0310-859d-f6bbb57e9c96
to the provided buffer.
Inode::Name() no longer locks the small_data region anymore.
Added ASSERTs that the small_data region is locked for the methods requiring
that.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2083 a95241bf-73f2-0310-859d-f6bbb57e9c96
bfs_read_vnode() will now wait for half a second at maximum until it returns
the B_BUSY error (so that live queries will like it better).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2058 a95241bf-73f2-0310-859d-f6bbb57e9c96
instead calls Inode::Free().
If INODE_DONT_FREE_SPACE was set, bfs_remove_vnode() forgot to delete the
inode before returning B_OK.
bfs_read_vnode() will now return the exact error Inode::InitCheck() returned.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2056 a95241bf-73f2-0310-859d-f6bbb57e9c96
to the InodeAllocator class (initialization of the inode, tree creation for
containers).
The InodeAllocator class now frees all the space the inode occupies, including
the B+tree if it's a container (by calling the new Inode::Free() method).
Inode::Free() implementation (logic removed from bfs_remove_vnode()).
Now secures the inode from being loaded by setting the INODE_NOT_READY flag
(completely handled by the InodeAllocator class).
The inode is now removed from its parent if something went wrong after it
had been added.
Utilizes the new BPlusTree::Remove() method where appropriate.
Inode::GetAttribute() now checks if the inode opened is really an attribute.
Inode::InitCheck() now fails with B_BUSY if the INODE_NOT_READY flag is set.
InodeAllocator::Keep() now writes back the inode.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2055 a95241bf-73f2-0310-859d-f6bbb57e9c96