Commit Graph

19293 Commits

Author SHA1 Message Date
Stefano Ceccherini 96d6092ef6 Re-enabled wait_for_thread() (in place of kill_thread()) inside
TermParse's destructor. PtyReader() was hanging on read(), since the 
fd was never closed. Now we do that in ~TermWindow() (for now, we might 
want to move some stuff around). Moved there the cleanup code too (from 
TermWindow::Quit()). Use B_QUIT_ON_WINDOW_CLOSE flag instead of sending 
a message to be_app in Quit().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 14:59:37 +00:00
Stefano Ceccherini ff2184e07d temporary reverted to using kill_thread because of a deadlock on quit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 13:14:12 +00:00
Stefano Ceccherini 63dc9cc262 Got rid of the global gPfd variable. Big time cleanup, made TermParse a
bit more robust with error checks and likes. Removed unused 
TermPrint.cpp file. I hope I didn't get on your 
way, Vasilis :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 12:48:36 +00:00
Gerasim Troeglazov 570ab00aa7 Fixed bug in fs_readdir function. Removed read-only assembling mode. Added settings file for addon tweaking: hide_sys_files, read_only, no_atime.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 07:01:21 +00:00
Ingo Weinhold 4e0e80ed6c We analyze a client FS's capabilities -- i.e. which hooks it provides or
can be emulated -- and pass this info to the kernel add-on. Thus we can
avoid passing requests to the userland that can't be serviced anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 05:16:08 +00:00
Ingo Weinhold cf4ccd6575 Renamed the FS interface hook read_link() to read_symlink().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 03:52:57 +00:00
Ingo Weinhold 12d359b85a * Removed write_link from the FS module interface. Adjusted all FS
add-ons accordingly and removed the syscall.
* Removed send_notification().
* Reimplemented notify_listener(). It used the unimplemented
  send_notification(). Now it has a chance to work. Note that
  notify_listener() is obsolete. I would already have removed it, if
  there weren't lots of FS implementations still using it (Hint!).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-05 00:46:57 +00:00
Ingo Weinhold 5a5aacca23 Added a level of indirection in the FileSystem management
(FileSystemInitializer). This will allow for subclassing FileSystem
later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 23:11:02 +00:00
Ingo Weinhold fd7339329f Not needed anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 21:48:55 +00:00
Stefano Ceccherini bb11b61bee Patch by Vasilis Kaoutsis:
* Use a BMessenger instead of a BWindow pointer
* Removed an useless SetTitle() call
* Lock the window before quitting it
* Style changes and cleanups


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 21:06:51 +00:00
Ingo Weinhold aa46234e72 Made ReiserFS code gcc 4 friendly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 09:18:55 +00:00
Ingo Weinhold 1ac141b1f8 Made RamFS code gcc4 friendly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 09:02:12 +00:00
Ingo Weinhold 6aeea78c6e Made the UserlandFS code gcc4 friendly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 08:26:45 +00:00
Ingo Weinhold 48d60fa69c Introduced new build system features: The variable HAIKU_DONT_INCLUDE_SRC to
turn off the inclusion of src/Jamfile, and the rule DeferredSubInclude to
include a subdirectory in UserBuildConfig. Together they allow a developer
working on a subproject to reduce jam's parsing time when only building the
subproject. Relevant mostly on BeOS; on Linux jam is pretty fast anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 05:09:59 +00:00
Ingo Weinhold eb9b19800b Fixed gcc 4(.1.2) build problems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 05:00:40 +00:00
Ingo Weinhold 5ca2f7aa8c gcc 4.1.2 conveniently saves the version number in a separate file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 04:47:55 +00:00
Ingo Weinhold 30589be58b Added C++ guard. I don't know, why we define the <wctype.h> protos both
there and in <wchar.h>. Any reason for not removing them in <wctype.h>? Or
maybe even nicer reverse the inclusion direction, i.e. remove the
duplicate protos in <wchar.h> and include <wctype.h> instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 02:31:43 +00:00
François Revol 3a7a88e4bc Display codec name, some more fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 16:49:51 +00:00
Jérôme Duval 96303159b3 fixing indenting style issues
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 15:26:57 +00:00
Jérôme Duval 5cb9bf4bbb gcc4 complains a lot of these #undef followed by values ...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 13:20:26 +00:00
Ingo Weinhold 2660a88261 We don't need ufs_mount anymore. One can simply use mount:
mount -t userlandfs -p "<client FS> <client FS params>" ...

The parameters may change later in order to become a proper driver
settings string.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 10:26:35 +00:00
Gerasim Troeglazov 6a15f740b9 Some code and style cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 06:59:35 +00:00
Ingo Weinhold 348be5b50b * Introduced the new static lock sVnodeCoveredByMutex to guard the
vnode::covered_by fields. Together with sMountOpLock it allows write
  access, either lock alone suffices for read access. Before
  sMountOpLock had to be acquired for read (and write) access, which
  meant that while mounting/unmounting a FS path resolution would have
  to wait. In case of the UserlandFS this would even cause a deadlock
  while mounting if the client tried to resolve the path of the device
  to be mounted (e.g. by opening it).
* Added a clarifying comment about read access to the
  fs_mount::covers_vnode/root_vnode field and removed locking in
  resolve_volume_root_to_mount_point() which was not necessary for
  explained reasons.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-03 02:42:36 +00:00
Niels Sascha Reedijk 89e18a513c * Take a document on compatibility from the Haiku website (experimenting with pages) - Originally written by Ingo and updated by others, I have permission from Ingo.
* book.dox Rework a bit of the structure
* midi2/support Separate the overview (or Introduction) from the list of elements in a module.
* support Wrote initial documentation for Beep/BufferIO/DataIO
* Stub for article on archiving.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 13:36:32 +00:00
Ingo Weinhold bb7ddc43d3 Fixed two query bugs:
* For B_EQUALS queries the first match would be skipped.
* Exact entry name matches were broken, since the used NameIndex::Find()
  expected null-terminated keys with the \0 included in the key length
  while it was fed only the raw string length.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 11:18:14 +00:00
Ingo Weinhold 2f742879c8 * Changed get_vnode_name() to take a dirent* parameter instead of the
name (saves copying the name, if that has to be done anyway) and added a
  wrapper version with the old interface.
* dir_vnode_to_path() was broken for file systems that didn't support
  the get_vnode_name() hook. It resolved the mount point too early, so
  that it was searching the mount point and not the FS root dir for the
  node. It uses the get_vnode_name() function now (before resolving the
  mount point).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 09:34:33 +00:00
François Revol df833da6af Add usb_dev_info and kdlhangman (yay) to the image
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 09:00:13 +00:00
Gerasim Troeglazov 07a20b8072 Fixed build for R5 and dano targets. Bug fixes for fs_rename and fs_walk functions. Added simple identify functions for haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 07:57:56 +00:00
Gerasim Troeglazov 7106362e9c Fixed build for R5 and dano targets. Bug fixes for fs_rename and fs_walk functions. Added simple identify functions for haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 07:48:19 +00:00
Gerasim Troeglazov 6b3592ca4b update libntfs-3g to 1.0
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 07:41:35 +00:00
Ingo Weinhold cc0bac7f51 We fake read_stat() on the root node and read_fs_info() when the
connection to the server is lost. The former is required by our mount
command (it stat()s the mount point for some reason unknown to me). The
latter is just to be a good citizen.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 07:09:18 +00:00
Ingo Weinhold 5a31d77f2c read_attr() was broken. We passed a pointer to the node instead of the
cookie.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 01:45:58 +00:00
Ingo Weinhold 97dd0fe3c8 * Adjusted according to the is_vnode_removed() -> get_vnode_removed()
change.
* The new notification functions are used instead of send_notification()
  and notify_listener() now. Mapped them in the BeOS kernel emulation
  accordingly. RamFS node monitoring seems to work now. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:41:09 +00:00
Ingo Weinhold 9481e62bdb is_vnode_removed() is now known as get_vnode_removed() and returns its
answer through a reference parameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:34:20 +00:00
Marcus Overhagen 0690e6bc16 added fast path to BPicture polygon drawing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:33:23 +00:00
Ingo Weinhold c8b7e8185a Fixed debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:33:05 +00:00
Ingo Weinhold a5f128e512 There's the supposed "out of memory" problem. Haiku is stricter than
BeOS and rejects create_area() requests with B_ANY_KERNEL_ADDRESS
address specification.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:32:26 +00:00
François Revol c91fb637b6 Add a File Info Window to MediaPlayer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-02 00:04:51 +00:00
Marcus Overhagen 0b0ecfab90 Added "const" to many parameters.
Removed most data allocations/copying from PicturePlayer, ServerPicture now has to do this when converting coordinates.
Added additional functions to ViewLayer to copy&convert multiple BPoint, BRect, BRegion to Screen coordinates, those should be further optimized.
Removed some function call overhead.
Note: some functions of PicturePlayer don't appear to be implented by PictureDataWriter,


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 23:17:40 +00:00
Marcus Overhagen 533b9a69a7 removed unnecessary use of const_cast
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 19:14:19 +00:00
Marcus Overhagen a20cecff60 removed unnecessary use of const_cast<> and (global) do_playback() function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 18:37:55 +00:00
Jérôme Duval 506a2d9cc1 fix gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 18:12:01 +00:00
Stefano Ceccherini 649d84071b Removed commented code which implemented reading and writing of old
style BPicture data. If we need to support it, we can always resurrect 
the code from the svn history.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 15:45:57 +00:00
Stefano Ceccherini 79e78d47e9 Moved some functions around, some minor cleanups...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 14:57:36 +00:00
Stefano Ceccherini ece074abe2 Archiving the picture now works
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 14:53:52 +00:00
Stefano Ceccherini caae1184ab When creating a picture with data, the app_server was writing beyond the
allocated memory, without telling anyone. That was causing bad things to 
happen. Flattening and unflattening BPictures now works, and 
consequently, printing works too. Bug #1014 is fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 14:47:10 +00:00
Axel Dörfler ab0ad5e92b Implemented printing the stack trace in vm_page_fault() for PPC as well.
Not tested, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 14:39:09 +00:00
Axel Dörfler 00be6a4ccb And of course, we shouldn't test newArea->cache_type before it was set...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 13:58:34 +00:00
Axel Dörfler 528e40c07d Of course, we need to query the address space of the source area, not the one of the target.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 13:52:58 +00:00
Axel Dörfler 0c12332715 * vm_map_physical_memory() now sets the wiring/locking type of the area created
to B_FULL_LOCK.
* vm_clone_area() now respects the source area's wiring and inherits it. This
  should fix bug #1055.
* vm_cache::type is now duplicated in vm_area::cache_type - this allows looking
  it up without having to lock a vm_cache_ref; this also solves a locking bug
  in vm_unmap_pages() in this regard.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-01 13:44:55 +00:00