Commit Graph

19083 Commits

Author SHA1 Message Date
Waldemar Kornewald
10e9b12fe0 Renamed SET_INITIAL_MODE_MSG to BUTTON_UNDO_MSG.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 14:39:08 +00:00
Axel Dörfler
bbf8311d15 * Fixed a race condition between deletion of the endpoint and canceling its timers;
the timer functions could access invalid memory.
* The endpoint manager now panics if a bound endpoint is not in the hash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 14:13:37 +00:00
Axel Dörfler
aa547f5fbb * mutex_lock() and recursive_lock_lock() now return a status_t and report failure.
* recursive_lock_unlock() now returns a void to mirror it's counterpart better;
  use recursive_lock_get_recursion() if you're interested in the lock depth.
* switch_sem(), and release_sem() now don't do anything anymore in kernel startup
  mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 14:07:31 +00:00
Axel Dörfler
d5d570384c The mutex was created too early, before semaphores could be used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:50:50 +00:00
Axel Dörfler
b200275472 Flushing the translation map is done automatically on unlock.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:49:50 +00:00
Waldemar Kornewald
abc649b868 Made the Screen preflet's behavior consistent with the other preflets.
* Moved Apply button into controls box (resolution, etc.), so its meaning is more obvious.
* Revert now resets the whole screen settings for all workspaces to the configuration at the start of the preflet.
* In confirmation window, renamed Revert to Undo because that's what it actually does (it has nothing to do with the Revert in the main dialog).
* Disabled Defaults button (for now) since it doesn't use the screen's preferred settings and added a few TODOs.
* This should fix bug #321.
Note: Unfortunately, it won't work correctly on R5 because BScreen can only access the active workspace, it seems (locally, I used activate_workspace() for testing the preflet). Also, Haiku doesn't yet support setting screen preferences for each workspace individually, so I couldn't test it.
I hope my code isn't too terrible. :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:48:59 +00:00
Waldemar Kornewald
ce9e75125e Changed from B_ALL_WORKSPACES to ~0 because that's more readable. :)
Can't we have something like B_CURRENT_WORKSPACE_INDEX?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:32:29 +00:00
Axel Dörfler
4668ce8544 Disabled the VMware graphics driver again, until it's remaining issues
are solved (see bug #994).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:27:37 +00:00
Ingo Weinhold
2cddddacba Made _gHaikuRevision static and renamed it to sHaikuRevision.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 13:01:28 +00:00
Axel Dörfler
f83348ef31 Fixed some warnings when build with GCC 4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 08:00:01 +00:00
François Revol
f5ae62186e Add info about used RAM. Use sizeof(string) everywhere.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-07 00:10:39 +00:00
François Revol
ee5c86dfd6 I should go to bed... I meant B_UTF8_COPYRIGHT of course!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 22:26:25 +00:00
François Revol
2b38f46d73 Not really a bug, but make sure the credits view doesn't overlap the other one by 1 pix on the left side.
Make sure string views don't overlap the border (suppresses the flickering on uptime update, though it's mostly due to app_server being slow in qemu).
Add urls (in blue, but TextView isn't clickable yet...) for several projects.
Use B_UTF8_COPYRIGHT instead of "(c)".
Add obvious copyright text for several stuff (GNU libc, tools, bash, zip, bzip2, some libs... vim).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 22:22:07 +00:00
Waldemar Kornewald
e89c235337 "Show Folder Location in Title Bar" is now disabled, by default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 21:41:40 +00:00
Michael Pfeiffer
91b6c45560 Added argument --pictures to print contents of unflattened pictures in
spool file.
Clean up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 20:52:48 +00:00
Waldemar Kornewald
2e7b1dcdb9 The Defaults button had a different default than Tracker has
internally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 18:33:10 +00:00
Michael Pfeiffer
180028f5af Link against libprintutils.a to fix linking errors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 18:21:53 +00:00
Axel Dörfler
17c3c55fbc Fixed flattening/unflattening BPictures. Unfortunately, this does not fix bug #1014.
Note: endianness is completely ignored.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 18:01:42 +00:00
Ingo Weinhold
cd9660c79a Moved sending the B_NO_REPLY reply from the destructor to the more
general _Clear(), so that the assignment operator and Flatten() will
trigger such a reply as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 17:30:54 +00:00
Ingo Weinhold
a4e0c1d43d * We do now have a special "_haiku_revision" section in our libroot,
containing the Haiku SVN revision number which is used by uname(). The
  value is 0 when built, but updated by the build system before copying
  libroot to the image (new rule CopySetHaikuRevision).
* For AboutHaiku we no longer write the SVN revision number into a
  resource. Instead we use the uname() info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 16:51:29 +00:00
Ingo Weinhold
6b533670b9 Fixed build on R5.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 16:37:36 +00:00
Ingo Weinhold
402d77f655 Small tool to update the haiku revision in a special haiku revision
section of an ELF object. Probably won't build under BeOS yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 16:30:26 +00:00
Axel Dörfler
230a0989fd bfs_free_cookie() now always write locks the inode - before it only hold a read lock
which wasn't enough when tampering with the inode's data, and it also acquired that
lock too late.
Thanks to Stefano for pointing this out.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 16:28:48 +00:00
François Revol
20d237e4d1 Support for building the vmware gfx driver as a package, thx to Urias McCullough <umccullough at gmail dot com>.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 06:15:01 +00:00
Axel Dörfler
eb117b4bfd Reworked the way thread_yield() works: just setting the thread to B_LOWEST_ACTIVE_PRIORITY
for one quantum wasn't really a good idea, as this could get quite expensive for the thread
(depending on the system load, it might have taken a long time until the thread was scheduled
again, no matter what priority it was).
Also, calling thread_yield() in a loop would have taken 100% CPU time.
Now, we sort the thread into the queue as with any other thread, but we'll ignore it once.
This now guarantees an actual context switch, as well as a much fairer rescheduling policy
for threads calling that function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-06 02:29:17 +00:00
Axel Dörfler
8c31a369ab Now sets the "other" unchanged version info to {0} if it doesn't exist yet - this
should work around bug #681 on R5. Please test.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 23:28:09 +00:00
Michael Pfeiffer
c282eba324 * Fixed bug #1009. Update window while in BPrintJob.ConfigPage() or
ConfigPage().
* Set mime type of spool file so print_server accepts the file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 20:40:15 +00:00
Ingo Weinhold
c1c0c22091 * In the BMessage assignment operator we do now clear some of the message
header flags after copying the header of the original message. Before
  cloning a message that still needed a reply would result in the clone
  also needing a reply, which, in the end, led to two replies being sent,
  thus screwing up the cached reply ports used for synchronous messaging.
  Fixes bug #1008.
  BTW, also clearing the reply info breaks Tracker and Deskbar, so I suppose
  R5 keeps it and Tracker and Deskbar rely on that behavior.

* Added a bit of debug code removing and printing spurious messages from a
  cached reply port.

* Added TODO in BMessage::~BMessage(). ATM, we only send a B_NO_REPLY in the
  destructor, but not in case the message is overwritten using the
  assignment operator or Flatten().



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 16:04:46 +00:00
Axel Dörfler
805b68a926 Fixed the bug I introduced yesterday that all queried "Close and ..." items would
set the status to "_status" instead of the actual status.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 14:43:37 +00:00
Travis Geiselbrecht
dcdc4f4b43 pulled over some stuff from newos:
at boot, per cpu, detect the cpu, pull down all the relevant cpuid bits and
save them into the per-cpu structure. Changed most of the code scattered here
and there that reads the cpuid to use a new api, x86_check_feature, which looks
at the saved bits.
Also changed the system_info stuff to read from these bits.
While i was at it, refreshed all the bits to be current.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-05 01:46:28 +00:00
Travis Geiselbrecht
5c3d21086c whew, the numbers were looking terrible for sycalls, but it was just the app being off by a factor of 1000.
It's still somewhat slower, but workable. null syscall speed on p3 500:
haiku  6800 nanosecs
beosr5 2200 nanosecs
linux  680  nanosecs


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:57:56 +00:00
Travis Geiselbrecht
bee597ebfb Rewrote the syscallbench app. It now will figure the overhead of a simple test loop,
then the overhead of a call into libroot, and finally the overhead of a syscall 
(using is_computer_on).
The numbers are totally abysmal right now. :(


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:12:54 +00:00
Travis Geiselbrecht
ea4ff0f689 is_computer_on() lives again as a true syscall.
Replaced the _kern_null syscall with _kern_is_computer_on.
is_computer_on_fire is a bit harder, since it returns a float from kernelland, which
at the moment isn't supported in haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 21:08:35 +00:00
Axel Dörfler
10c69bce7b * Moved the query engine from TMenu into its own function add_query_menu_items().
* Removed the "Set to..." submenu from the "Close and" menu; instead, all items
  are now added to the same level, which makes this menu more useful and easier
  to use.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 19:07:21 +00:00
Axel Dörfler
f7f2fd3533 * Removed VIEW_COLOR definition, and also fixed its former usages to use
ui_color(B_PANEL_BACKGROUND_COLOR) instead.
* Cleanup, simplified TStatusWindow.
* Did not fix font sensitivity issues in TStatusWindow (but that's also
  not for Ryan, as MDR should stay compilable on R5 as well for now).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 19:02:48 +00:00
Ingo Weinhold
eccc7665b5 Added configure option --use-gcc-pipe to enable building with the gcc
-pipe option.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 14:03:21 +00:00
Axel Dörfler
815c38625d Applied patch by Vasilis Kaoutsis:
* replaced new[] with malloc()/realloc() where appropriate - since we're messing with
  the bits anyway, this makes the code slightly faster.
* however, we might want to throw some std::bad_alloc exceptions to deal correctly with
  low memory situations.
* cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 13:32:36 +00:00
Ingo Weinhold
ac5beb17a5 Removed obsolete --floppy option.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 12:56:20 +00:00
Jérôme Duval
bf63295e0b reverted changes from revision 7340, it seems to not be useful anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 11:48:08 +00:00
Ingo Weinhold
d0097591b0 Added shebang. Should fix bug #956.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-04 10:50:11 +00:00
Travis Geiselbrecht
43e6454f92 Change the jam rules to build the test binaries as release by default,
debug only if you specify TEST_DEBUG. The debug binaries don't seem to
work right anyway.

Hopefully this didn't mess anyone up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 21:55:45 +00:00
Axel Dörfler
ebabf50a02 x86_userspace_thread_exit() did not correctly setup the stack for the syscall.
I don't know why (or how) it could work before r19775, though.
This fixes the wrong return code from wait_for_thread() in most cases, and thus,
bug #1011.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 18:30:24 +00:00
François Revol
d4ab0e458d Also strerror() for syscalls returning int (open, ...).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 17:00:12 +00:00
Ingo Weinhold
d09c136a8c Send out B_SOME_APP_LAUNCHED/QUIT messages only for fully registered
apps. This fixes bug #948.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 12:23:03 +00:00
DarkWyrm
2709c7813e Fixed build for R5 target
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 12:14:00 +00:00
Ingo Weinhold
c392233749 Fixed RosterShell build for Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-03 11:26:48 +00:00
Axel Dörfler
4d1fd46cdf * Replaced DEBUG MultiLocker with an implementation that actually helps debugging
locking problems (instead of debugging the locker class).
* MultiLocker::IsReadLocked() is now only exported with DEBUG mode turned on, as
  it only works correctly in this case.
* Made MultiLocker safe against B_INTERRUPTED, ie. it now just tries to lock again
  instead of failing for no obvious reason.
* Removed bogus arguments to acquire_sem_etc() in MultiLocker (like B_DO_NOT_RESCHEDULE).
* Applied coding style to MultiLocker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-02 19:16:18 +00:00
Axel Dörfler
cb134e2550 Resolved a TODO: WorkspacesLayer must take the whole workspaces frame into account, not
just the one of the first screen. This also solves a locking bug, as the HWInterface
is already read-locked when WorkspacesLayer::Draw() is called.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-02 18:14:25 +00:00
Waldemar Kornewald
234554ce4b Fixed BScreen::SetMode() to use the current workspace when none is given.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-02 17:47:01 +00:00
Axel Dörfler
ad7e408e18 The SemaphorePool method could hand out unbalanced semaphores - it only called
Semaphore::ZeroCount() on new semaphores, not on used ones. Found by Stefano, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-02 17:12:00 +00:00