Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler 33c16998cd Removed unused constants.
People is now almost font-sensitive (only the width is fixed).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 03:29:10 +00:00
Axel Dörfler 779f323d92 Big cleanup.
Now searches all volumes for people groups.
The only thing left is to make "URL:" and "E-mail:" clickable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 03:18:00 +00:00
Axel Dörfler f32d9ec555 Added some more preferences apps to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 23:43:42 +00:00
Axel Dörfler e7281ecba6 Fixed a bug in next_argument(): it could read after the terminating
null byte, and add junk as arguments. Thanks to Korli for testing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 23:40:43 +00:00
Axel Dörfler 6a27b3b363 Renamed source files for LinkReceiver and LinkSender to match their class names.
Headers will follow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 23:10:39 +00:00
Axel Dörfler b7e162e93a We definitely don't need the FIX_FOR_4_6, whatever that was about.
Also restored the original locations of the class members I broke before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 22:12:32 +00:00
Axel Dörfler 62bb447ee0 In order to be binary compatible, one should not change the location
of private members if the class has friends (and BWindow has a lot of
them...), stupid Axel!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 22:04:29 +00:00
Axel Dörfler 0cb92588a8 Made sLocker static, as originally intended.
If there is no be_app when the AppServerLink is created, it now
falls into the debugger (maybe only for now?).
Removed some debugging cruft.

BTW I changed the standard app_server resolution to 800x600 by
intention - at least for testing this is much more appropriate,
and can be reversed later again.
FWIW I think we should use 1024x768 as a standard or whatever
is the native display resolution. Use 640x480 as a fall back
only in safemode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 21:37:03 +00:00
Axel Dörfler f395db3740 Updated a comment I forgot before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 21:31:30 +00:00
Axel Dörfler dd10337fd0 Renamed BAppServerLink to AppServerLink, BPortLink to PortLink, LinkMsgReader
to LinkReceiver, LinkMsgSender to LinkSender, and put everything into the
BPrivate namespace.
Made AppServerLink a cheap object - it will use the applications receiver/sender
and not create its own buffers.
Fixed broken communication stuff here and there (mostly Font.cpp).
Put the newly introduced set|get_system_colors() into the BPrivate namespace -
please don't introduce private functions into the public namespace!!!
Also fixed their broken communication use, as Darkwyrm obviously forgot about
it again: the sequence Flush(); GetNextMessage() without error checking is
purely wrong and can make the app hang and/or crash! :-)
Other minor cleanup.
The input_server used some test mode with the haiku build target which is
probably wrong.
Hopefully I did not forget anything this time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 21:28:56 +00:00
Axel Dörfler 48d350d76e Accidently replaced lib.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 19:50:01 +00:00
Axel Dörfler 80f47570a5 Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 19:49:18 +00:00
Axel Dörfler 494301a5aa Minor cleanup, fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 13:27:26 +00:00
Axel Dörfler 43ed6aa0db The "shebang" handler is supposed to parse arguments, too - we now do that.
Also, when the line is too long, E2BIG is returned.
Thanks to Korli who pointed me to this: http://homepages.cwi.nl/~aeb/std/shebang/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 12:39:06 +00:00
Axel Dörfler be22452f3b Apparently, both load_image() and exec*() support running scripts. We do that
now as well.
Also, both functions will now test if the executable exists and is valid; that
way, load_image()/exec*() can catch many errors without having to create a new
team (or erase the current one - an exec*("my invalid app") might now return
with an error).
The runtime linker now exports a function to test executables that is aware
of the search paths, and will also check user permissions upfront.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 11:23:29 +00:00
Axel Dörfler 229b2db028 cache_node_launched() is now called later, so that the environment will
be the same for both ways (via load_image() and exec*()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 11:15:05 +00:00
Axel Dörfler 6262418e6a fInitialized was never set to "true", so InitCheck() could never succeed.
Also fixed _AllocateBuffer() to handle out of memory situations gracefully.
It should probably also have upper limits with regard to the bitmap size.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 00:12:45 +00:00
Axel Dörfler fc95358474 Optimized writing by enlarging the file before the single entries are written
(that saves the file system from starting a new transaction, which is currently
expensive).
Changed output a bit: the launch line now also contains the parent team ID,
file paths are truncated from applications.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 18:44:22 +00:00
Axel Dörfler aadb0f6bb8 The acceleration hooks are now set after a SetMode(), and get a display_mode as parameter
as required by the interface.
Unfortunately, this doesn't help the slow window moving with Rudolf's drivers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 17:42:52 +00:00
Axel Dörfler 02cc496038 Build fix, improved debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 16:04:45 +00:00
Axel Dörfler b84688be5f Added a basic low memory handler service.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 13:03:54 +00:00
Axel Dörfler b1a248305b Minor cleanup, changed return type of page count functions (from addr_t to size_t,
as that's more correct).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 13:02:24 +00:00
Axel Dörfler a69e0ac327 The boot item list was not initialized; this was no problem, though, as
no items can be removed from that list - nevertheless, it's wrong.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 13:01:13 +00:00
Axel Dörfler ff9fb62471 Some cleanup (made static variables static).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 12:59:11 +00:00
Axel Dörfler 183dee22cb Unlike R5, receive_data() could return an error code under Haiku - this
can now only happen if the thread is killed.
_user_receive_data() will now longer pass B_CAN_INTERRUPT to receive_data(),
but B_KILL_CAN_INTERRUPT - this should fix the problem Stefano experienced
with this function, even if I couldn't reproduce it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-12 11:14:37 +00:00
Axel Dörfler e53168541f Instead of letting the window reroute the messages, I just learned the
target can also simply be set to the preferred handler by using the
BInvoker::SetTarget(NULL, Looper()) form.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-11 17:57:03 +00:00
Axel Dörfler b4ca6a8fc1 Cut/Copy/Paste messages and B_SELECT_ALL are now sent to the window, which then
passes them to the focus view. Before, only the data view got those messages
(because they are accessible over the menu, and had the data view as target).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-11 17:50:51 +00:00
Axel Dörfler 2a1492f0fa Moved the definition of the BlockAddressPool class into block_allocator.cpp, as it's
not used outside of it.
Added tracking for the last transaction in the block cache; that way it can test
if the last transaction has been closed before opening a new one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13022 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-09 02:14:28 +00:00
Axel Dörfler 584d673049 Fixed various bugs in the block allocator: new free ranges were never added
to the free list, so a new range was started for every allocation (!).
block_range::Free() did not update the chunk's used_mask correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-09 02:09:06 +00:00
Axel Dörfler 1c12a6a33f Inode::ShrinkStream() now evaluates the return values from some functions - dunno
if that's a good idea (it may still be a good idea to succeed for shrinking the
stream, even if not everything worked), but it looks better :-)
Improved debug output in case TrimPreallocation() fails.
Journal::FlushLogAndBlocks() no longer ends the current transaction if called
from within an ongoing transaction.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 17:33:56 +00:00
Axel Dörfler 78d6683c68 Changed the "help" command to be able to only show all commands starting with a certain string.
This helps to reduce the flood of commands for those blue screen "users" :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 17:16:40 +00:00
Axel Dörfler 07339e709d Ctrl-C now also works in the MiniTerminal.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 16:58:46 +00:00
Axel Dörfler 8b0b0568fd Made copy_from_start() more clear and probably faster.
Commented out a check that would prevent characters smaller than B_UTF8_ELLIPSIS
to be rendered (ie. the maximum width could be less than the ellipsisWidth but
greater than the complete string width for small strings).
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 14:38:29 +00:00
Axel Dörfler e60b1ff1d8 Reserved space for the close and zoom buttons, even if they were absent.
Hack workaround: enlarged the text width a bit, because the title often appeared
truncated for no apparent reason.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 14:35:25 +00:00
Axel Dörfler 3ba7d6f350 Added AS_{GET|SET}_DESKTOP_COLOR.
(Incorrectly) implemented AS_GET_DESKTOP_COLOR - works for now.
Minor cleanup.
Is AS_SET_SCREEN_MODE used at all?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 13:24:40 +00:00
Axel Dörfler e9b005131f Fixed some crashing bugs (that only appear under Haiku, because there is some
stuff missing - defensive programming rules :-)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 04:11:19 +00:00
Axel Dörfler bd28b3c746 BAppServerLink is now using BApplication::fServerTo/From for its messaging.
Added LinkMsgReader::NeedsReply() method.
Completely redone ServerApp messaging: no more "replyport" from BAppServerLink; instead,
the registered client reply port is used. Fixed some more weak messaging stuff.
ServerApp now recognizes if an unknown message needs a reply, and sends it - for example,
the "Screen" preferences app no longer hangs, but crashes on start :)
Made LinkMsgReader::Read() virtual again, since it's needed by RAMLinkMsgReader.cpp.
Renamed BPortLink::GetNextReply() to GetNextMessage().
Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 04:01:59 +00:00
Axel Dörfler be835bdf0b Fixed LinkMsgReader::ReadString() for empty strings I just broke before.
Extended the PortLinkTest application a bit (and updated it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 03:29:10 +00:00
Axel Dörfler 0aa69a9cd4 Fixed the crashing bug when quitting the app_server.
The display driver is now owned by the Screen object.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 01:40:22 +00:00
Axel Dörfler d673482488 Under Haiku, the "stub" driver is called "vesa", so we're trying to use this one.
Note, the special case can go as soon as we've moved the driver over to the new
driver architecture.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 01:39:14 +00:00
Axel Dörfler ecc2961bee Fixed warnings and the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 01:23:44 +00:00
Axel Dörfler 9db6e5bc94 Fixed fake_app_server build due to the BPortLink changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 01:13:38 +00:00
Axel Dörfler 75936a02e4 BPortLink now has a FlushWithReply() method itself.
BPortLink::AttachString() now accepts a length argument, and will no longer
send a terminating null byte; LinkMsgReader::ReadString(), however, will
make sure the string read is null terminated.
Changed client communication code to use FlushWithReply() instead of Flush()
and GetNextReply() - there were many bugs and shortcomings in the code, I
hope I've fixed them all.
Converted ClientFontList.cpp to our coding style (but not completely, the
class members are missing).
Some more cleanup - I hope Adi will adopt our coding style one day!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-08 00:36:26 +00:00
Axel Dörfler 750b92faf3 Almost rewrote LinkMsgSender; it's now much cleaner and works better:
- StartMessage() can now get a size to make sure there is enough free space
- if StartMessage() is called with the current message behind a certain
  watermark, the buffer is flushed in order to prevent moving around messages
  in the buffer. The actual value should be tested in real life, though.
- enlarged maximum buffer size to 64k
- fixed bug: could use memcpy() to move overlapping memory around
- added a flag to Flush() that marks messages as needing a reply - the other
  way would be to mark the message "code" to contain this information

Some cleanup in LinkMsgReader.
BPortLink now has most methods as inlines.
The buffer sizes are now declared in a shared header, so that receiver and
sender are always equipped equally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 22:36:03 +00:00
Axel Dörfler 62fbf00df8 Added a simple mini test application for BPortLink.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 19:40:56 +00:00
Axel Dörfler c493c21745 Cleanup only.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12990 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 14:30:50 +00:00
Axel Dörfler 2cafbe7535 Since Bochs 2.2 can finally run the Haiku app_server, it is now enabled
by default. Select "safe mode" in the boot menu to get to the old consoled.
Note, if you're using VESA mode, make sure you run in 32 bit, or the
app_server will crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 00:54:23 +00:00
Axel Dörfler 860b32520c Almost rewrote BDeskbar. Fixed some bugs. Added some ToDo comments - the
functions will currently deadlock when called from within the Deskbar.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-06 14:23:06 +00:00
Axel Dörfler 683be71e08 Added stuff for AddMessage() and _AddMessagePriv() - mostly comments
on what they should.
More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-05 19:37:05 +00:00
Axel Dörfler e17b33e56b The window was removing the app_server connection too early, and thus hang in Quit().
Removed the stopConnection() method.
Cleaned up header a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-05 18:57:55 +00:00
Axel Dörfler 851fc4f198 Private class BAppServerLink now has a global locker, instead of
(ab)using the BApplication lock to synchronize messaging.
Also, it now has one global reply port, that is created on demand,
but never freed - hope this doesn't cause any other trouble.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 17:16:49 +00:00
Axel Dörfler 3cd9c86453 Quit() when called from another thread, never posted _QUIT_ to the looper,
and therefore waited indefinitely for its demise.
Run() had the usual "if error != my special error -> everything fine" that
seems to be everywhere in the Application Kit.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 17:13:42 +00:00
Axel Dörfler a55bbe35a4 Fixed a warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 15:31:26 +00:00
Axel Dörfler a01d14b2db Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-04 15:15:42 +00:00
Axel Dörfler 68c1f3d2eb Disabled code that could find newly installed drivers - it's not likely we
will do that anytime soon, and it should be done by using node monitoring,
anyway.
devfs_open_dir() now makes sure the directory contents are up-to-date - this
should fix the app_server device lookup.
Disabled debug output in the read/write hooks to improve its usage.
Renamed part_map to partition.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 00:51:17 +00:00
Axel Dörfler 80f6ef8bd8 Moved load_driver() and load_driver_symbols() over to devfs.
Added new devfs_add_driver() function that the device manager will now call
to register new drivers.
Devfs will now keep a list of known drivers and remembers, if they have
been initialized already - a driver can now safely scan the directory it's
in while being scanned itself without having its hooks called twice.
Devfs is now using a recursive lock instead of a mutex (that's not really
a requirement right now, but would allow us to keep the fs lock during
scanning).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-02 18:32:21 +00:00
Axel Dörfler 19b77242ac Some minor cleanup: removed unneeded includes, updated introducing comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-02 18:23:26 +00:00
Axel Dörfler 317121e102 Work in progress of the new block allocator for the block cache. It works, but
currently needs even more memory than the old one 8-)
Not cleaned up at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-01 16:39:38 +00:00
Axel Dörfler 6233964798 Removed host BeOS version recognition: we now always default to target "haiku".
Building our components for use with R5/dano/whatever is now something you need
to want, it's not the default anymore.
Note: you can still build single components for R5 by overriding the target
platform per target, too, for example:
$ TARGET_PLATFORM=r5 jam app_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-01 14:33:46 +00:00
Axel Dörfler 12e1714d54 Fixed stupid bug in copy_environ_to_heap_if_needed(): it copied the
environment, but it didn't set the "environ" to the new array, and
thus throwing away the copy again.
GCC no longer crashes because of this, and runs through without help :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-31 01:59:01 +00:00
Axel Dörfler 2dbdc141cf Transactions can now be nested (bfs_release_vnode() actually did that before,
but that was not working correctly):
only the owning transaction (the one that came first) can now end a transaction.
To do: if the owning transaction fails, it should actually not abort the
transaction in case there were sub transactions, but does so right now
(should do no harm, eventually file data is not freed as it should).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-31 01:26:39 +00:00
Axel Dörfler 3bb591ce9a We don't want to drop into the kernel debugger for that right now
(FATAL() would be okay, but it's currently configured to panic).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-31 01:19:43 +00:00
Axel Dörfler 809025e47c BlockArray::MakeEmpty() can now also be called before the block has been actually used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-31 01:18:34 +00:00
Axel Dörfler dde78a340e Fixed off by one error: could call memcpy() with '0' as size argument.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-31 01:17:25 +00:00
Axel Dörfler d1407b9d2b The "PANIC" line will now also appear on the blue screen, not only over serial.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-30 23:09:36 +00:00
Axel Dörfler 5692a950fa We don't stack transactions together, so we need to end each transaction,
even if empty.
Added some more debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-30 18:35:25 +00:00
Axel Dörfler f4e5c34143 cache_abort_transaction() freed the wrong block, and thus causing a file system
corruption even better than during its absence.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-30 16:54:08 +00:00
Axel Dörfler ac5af8f1b4 The maximum allocation size we've configured our allocator is 1 GB. Instead
of running into an assert() later on, we now back out early in this case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-30 14:10:06 +00:00
Axel Dörfler 11a2999d10 Now also prints the area offsets next to the instruction pointer so you don't have
to enable debug output in the runtime linker and still have to compute the offsets
manually.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-30 12:22:34 +00:00
Axel Dörfler c88974d026 The app_server now updates the kernel's blue screen frame buffer on mode changes
(only the accelerant HW interface does this for now).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 20:23:00 +00:00
Axel Dörfler f33c8020e2 Removed debug/console.c, we no longer need it. frame_buffer_console_init() is now
called by debug_init_post_vm().
Since the availability of a blue screen specific getchar() is static anyway, there
is no need for the sBlueScreenGetChar variable (only the message "only serial input
available" gets lost, but since that is platform specific anyway...).
Hello blue screen! We now have an on-screen KDL, to be enabled by the kernel
setting "bluescreen", just like on BeOS.
The blue screen does not yet support any cursor actions or backspace, though (need
to grab some stuff from our console driver).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 16:23:00 +00:00
Axel Dörfler 38b2e6ccbe Added some more options we more or less support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 16:04:18 +00:00
Axel Dörfler 395c6c62f2 Renamed arch/dbg_console.h to arch/debug_console.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 14:34:03 +00:00
Axel Dörfler 45c54054f7 No longer needs to include <arch/dbg_console.h>
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 13:33:30 +00:00
Axel Dörfler 2b8d85854d Renamed arch_dbg_console.c to arch_debug_console.c, dbg_console.h to debug_console.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 13:31:15 +00:00
Axel Dörfler eca3ada99b Removed some unused old headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 13:29:55 +00:00
Axel Dörfler 9a63135f7c Cleanup of the debug stuff, prepared for blue screen debugging.
kernel_debugger() didn't do enough before; panic() did all the work - but
since the former is a public function as well, I moved all the functionality
to it. Also fixed a possible buffer overrun in panic().
Renamed dbg_* to debug_*.
"serial_debug_port" setting did not ignore negative values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 13:01:38 +00:00
Axel Dörfler 24b2daf33d Slightly improved debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 12:53:56 +00:00
Axel Dörfler 1b22c05ae8 Fixed warning I introduced before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 11:33:45 +00:00
Axel Dörfler e8cd95e31a The default settings file now shows the default values, too, even
if they all commented out.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 10:58:50 +00:00
Axel Dörfler 2e95dad4b9 strerror() no longer reports "Unknown Application Error" for positive values,
instead it now says "No Error".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 10:51:47 +00:00
Axel Dörfler b2c1ecd640 Added patch originally written by Ingo Weinhold:
- extended libdebug.so functionality to be able to get stack frames,
  current instruction pointer, etc.
- changed the debug_server to be able to run as a simple BLooper - this
  saves some trouble when the app_server dies
- the debug_server now prints out a stack crawl for the crashed team
  (without symbols, though - for that data to be helpful you should
  have a look at the loaded images (ie. where they start))
- the debug_server now also prints the team name when it kills it


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:44:51 +00:00
Axel Dörfler 3c0cb78db9 Added "Pulse" to the list of applications (it starts, but doesn't look correctly yet).
If a file "vesa" happens to be in data/settings/kernel/drivers/ it will be copied to the
image.
If you're on a BeOS machine, the standard fonts will be copied (Swis721, Courier); this
causes the "Workspace 1" to be shown under Haiku, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:39:22 +00:00
Axel Dörfler dd3d1f72ac BLooper::InitData() will now choose a default name ("anonymous looper") in case
no name was specified on creation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:33:34 +00:00
Axel Dörfler 9620c1d716 rename_thread() was broken for the current thread: updating the name is
hardly atomic, so we need to grab the thread lock after all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:29:45 +00:00
Axel Dörfler d9152a2dfe We now accept NULL as a thread name (in which case it will get a default name).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:20:18 +00:00
Axel Dörfler 1d2f53e0ba Disabled debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-29 00:17:02 +00:00
Axel Dörfler b3ef4fb41a Oops, forgot to implement cache_abort_transaction(); every failing transaction
could have destroyed the BFS integrity... (just happened to me, that's how I
noticed it)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-28 15:11:18 +00:00
Axel Dörfler 9f8298d908 Added empty functions for _k{get|set}_cpu_state_().
That makes Pulse to build and even run (but with no visible output) on Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-28 13:57:02 +00:00
Axel Dörfler 2724858b5b Added global app_server port, so that other parts of the server don't have
to search for it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 13:36:05 +00:00
Axel Dörfler a4ad43aa83 Fixed some more cases of "error != specific error ==> everything alright, then".
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 13:34:52 +00:00
Axel Dörfler 140e3bb026 Instead of the ugly and unnecessary cookie union, we now have a cookie for
opened devices, and one for opened directories.
Also adds and removes those directory cookies correctly now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 00:43:01 +00:00
Axel Dörfler b716c3307f Removing the cookie must be locked as well, of course.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-27 00:41:00 +00:00
Axel Dörfler 7c17001c77 Implemented BPartition::GetPath() much like KPartition::GetPath().
The "mountvolume" command can now actually mount file systems :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 20:44:33 +00:00
Axel Dörfler 96cfeb706a Now prints "<unknown>" as the name of unrecognized file/partitioning systems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 20:13:33 +00:00
Axel Dörfler b674940baa No longer shows "<unnamed>" for partitioning systems that have no name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:58:36 +00:00
Axel Dörfler 0f04de87a7 The directory cookies of open directories are now correctly maintained and
removed when no longer used (the same bug is still present in devfs, btw,
and can potentially cause crashes).
Cleanup of the cookie code, it's now using util/list.h.
Now issues B_STAT_CHANGED notifications when directory entries changed.
rootfs_rename() was completely broken for "inter-directory" movements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 19:56:41 +00:00
Axel Dörfler d7c08b7d2e Tried to make the ServerApp aware when a client dies: the main communication
port is now transferred to the client, so that it goes away automatically.
Unfortunately, this doesn't seem to work. This code is truly a big mess :-/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 15:06:31 +00:00
Axel Dörfler 280d1aac5b Tried something, didn't work, some cleanup left.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 15:04:45 +00:00
Axel Dörfler 0c7e8ef8f4 Renamed "cl" to fCurrentLayer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-26 13:56:42 +00:00