Commit Graph

27273 Commits

Author SHA1 Message Date
Michael Lotz 85c66f1c22 * Disable ACPI by default for now as it currently introduces problems with
interrupts (UHCI/EHCI not working).
* Add missing line break in debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 22:06:27 +00:00
Ingo Weinhold 51f837ae42 Dynamically adjust the page writer's I/O priority depending on how many
pages have to be written and how tight the memory situation is.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 22:02:55 +00:00
Ingo Weinhold 6e595b29e3 Moved KERNEL_BREAKPOINTS to kernel_debug_config.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:43:32 +00:00
Ingo Weinhold 3b248948f2 Added ThreadCPUPinner AutoLocker class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:41:11 +00:00
Ingo Weinhold d52718a5f8 Fixed serious race condition: If the thread waiting for a request was
interrupted, another thread closing the other end of the pipe could
invoke thread_unblock() while the first thread already entered
mutex_lock(). This would make the first thread think it successfully
locked the mutex, without removing its (on-stack) wait entry from the
mutex queue, thus leading to crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:40:32 +00:00
Oliver Tappe 9f3fce1eac Stippi + zooey:
* fixed LineHeight() for the case when the textview does not yet contain
  anything - instead of returning 0 we now return the lineheight of the
  default style (or the textview's font).
Fixes #2231


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:40:12 +00:00
Ingo Weinhold 9b0eb8c8f4 Removed "lal" alias and added "-A" to "ll" instead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:34:15 +00:00
Ingo Weinhold 8a05bb865f Added TODO regarding serious locking problem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:32:14 +00:00
Michael Lotz 471844b258 Add the ACPI module to the boot module symlinks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:31:32 +00:00
François Revol 4d05f2f108 Added an updated version of BeHappy as optional package. This one can use NetSurf instead of NetPositive if it finds it.
Make sure you rm generated/downloads/NetSurf.zip to get the new replicable one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:31:17 +00:00
Michael Lotz 88db388930 Remove one line of whitespace.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:22:00 +00:00
Michael Lotz 6ddf7ae490 * Make the initialization of the DPC module lazy. It'll not be available in early
boot, but it's not needed there either.
* Return 1 for the thread id when ACPI asks and we are thread 0 (early boot),
  because it treats 0 as an error.
* Switch over logic when installing/removing interrupt handle to panic when
  installing the interrupt handler if the data supplied is non-NULL. In case it
  is NULL we're fine because we can remove it again without knowing the data.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:19:23 +00:00
Michael Lotz d4c300d8f1 Prepare usage of the ACPI module. Actual code for getting PCI interrupt routing
not yet done though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:12:33 +00:00
Michael Lotz 83d8936cff Move semaphore initialization a bit earlier in boot. They'll be needed by ACPI.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:11:37 +00:00
Stephan Aßmus 46bf89d15f * This should fix the build of FileTypes... I should have heard the warning... :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 21:10:43 +00:00
Michael Lotz 60a068c8a4 Fix build. The deep version did use the CompareData of course.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:54:40 +00:00
Axel Dörfler b4b00ffcea * Added bfs to the -Werror components.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:53:41 +00:00
Stephan Aßmus dad7391aaa * Implement a method to track the need to save changes. Enabled the
Save menu item accordingly and ask the user to save changes when he quits
  the window and there are any changes.
  Most changes are tracked in a robust way, only icons are tracked with a
  more fuzzy method (the actual data is not compared). Whenever an icon
  (of the app itself or one of its types) is changed, then the preflet is
  convinced of the need to save, regardless of the icon is removed again or
  is changed to the visually same icon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:45:48 +00:00
Michael Lotz 3c6372b44a Rename BMessage::CompareData() to HasSameData() as this makes more sense for the
bool return type. Did I mention this was an unstable Haiku extension?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:45:12 +00:00
Axel Dörfler 49ad25b392 * The type ahead mechanism did not work correctly in list view mode: instead
of taking the contents of the columns, it would always use the file name
  instead.
* That uncovered another bug, though: WidgetText::Text() tried to cast everything
  to StringAttributeText, but GenericAttributeText is actually used for most
  columns.
* Therefore, GenericAttributeText is now a subclass from StringAttributeText.
* Extended the type ahead to take other columns into account, and made it also
  find strings in the middle (like a filter) as a second choice.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 20:18:20 +00:00
François Revol 1e2bc11e99 bonefish+mmu_man: fix cbuf_user_memcpy_from_chain() returning an error when the source buffer was NULL despite being asked for 0 bytes, while the counterpart was actually not creating a buffer for 0 bytes to send... Also don't bother calling it from receive_data() in that case anyway.
This fixes a deadlock in SoundPlay that made it freeze when trying to play the 2nd sound.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 19:48:28 +00:00
Stephan Aßmus 20ca748ade * Fixed a memory leak when creating the drag bitmap.
* Added an optional modification message that is triggered whenever the
  view adopts a new icon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 19:26:19 +00:00
Stephan Aßmus 21f11263f6 aldeck + stippi:
* Improved the naming of the menu entry that removes a replicant from a shelf
  to be less frightning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 19:21:01 +00:00
Stephan Aßmus 11c5023a77 Applied patch by Stephen Deken:
* Added a new class BAffineTransform, currently in the BPrivate namespace
  and the inofficial "shared kit".
* Extended BPolygon to be transformable by a BAffineTransform.

Thanks a lot!

Minor fixes by myself:
* The class accidentally still derived from agg::trans_affine.
* Added then missing comparator operators.
* Swapped the BPoint* and count arguments of Apply(), since that seems
  to be the more common order in the other Be API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 19:10:10 +00:00
Stephan Aßmus bf3a206445 Fixed r28168, which introduced an app_server deadlock. Functions
which call into Desktop methods which in turn grab the window
write lock are never supposed to hold this write lock themselves
already, since the Desktop code takes care to not hold the lock
when for example calling EventDispatcher methods, which would
cause a deadlock (as in this example).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 18:01:55 +00:00
Michael Lotz 5b25b917f9 Introduce BMessage::CompareData() which is a Haiku API extension. It compares
the data of two BMessages and allows recursive comparison (BMessage inside
BMessage). Note that using this API might require you to recompile your app in
the path to R1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 15:55:36 +00:00
François Revol baa1c04611 Add support for non-standard port on ssh and sftp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 15:51:16 +00:00
Stephan Aßmus f73283cf6a When opening mails with slightly larger attachements in Beam, I noticed that
it was quite sluggish. When opening larger mails, like a 1.14 MB mail for
example, it could take almost half a minute until it was displayed. It turned
out that the offending thread was in strstr().
This is an implementation taken from Wikipedia (declared as public domain
there), which makes the mails open instantly. This usecase may have represented
a worst-case scenario for the previous implementation. It may be beneficial to
take a look at more of these string functions, but I am happy for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 15:31:58 +00:00
Axel Dörfler a0a1bf7fb0 * Disabled the allocation group check again.
* Fixed warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 15:11:07 +00:00
Oliver Tappe e1e083d584 * added skipping of '0'-modified supported by glibc (formats are padded
with zeros anyway)
this fixes creation of unique file names in Beam under haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 13:51:45 +00:00
Stephan Aßmus 85649f93c7 Removed the solid white icons.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 12:57:09 +00:00
Axel Dörfler 96c6ee9507 * _Show() and _Hide() must now be called with having all windows locked
(it would do that internally anyway).
* AS_MINIMIZE no longer calls _Show() when being unminimized, but
  Desktop::ActivateWindow(), as this will also bring the window on the screen
  if it's on another workspace (according to its flags).
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 12:15:02 +00:00
Michael Lotz 9f1cce99b9 * Fix warnings in busmanager code.
* Check return of lock_memory() and get_memory_map(). They may fail and under
  Haiku they also return a usable value in that case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 12:02:51 +00:00
François Revol 861fb97cf9 Inline Unset and SetTo correctly. I copied the class from BFS which only uses it in a single file...
Thx for the gcc4 fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 10:05:59 +00:00
Michael Lotz 433579eaf5 Fix comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 10:05:41 +00:00
Michael Lotz 9ed6818888 * Return an error code if installing the interrupt handler fails.
* Add debug facilities.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 10:05:01 +00:00
Michael Lotz 8be1e1ecf4 The ACPI module isn't BeOS compatible anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28163 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 10:02:05 +00:00
Axel Dörfler 58a77fd3c9 * Fixed the incorrect ASSERT that possibly dropped you into KDL while deleting
something (as reported by Marcus and Bruno on the mailing list).
* AllocationGroup::Allocate() would always invalidate the largest block if
  it did not cover the largest part of the group; now it only invalidates it
  if it has been cut before.
* Added small test app for the invalidation part.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28162 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 10:00:34 +00:00
Stefano Ceccherini a96b4beb84 Fix build for gcc4. If you really want to inline these methods, they need to be implemented in the header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 09:53:06 +00:00
Stefano Ceccherini b5e67ab6fb Fix build for gcc4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 09:30:07 +00:00
Stephan Aßmus 26da5fe367 * Do not delete the private data of the BMessage! This fixes a crash when
dragging and dropping icons from one FileTypes window to another (in case
  the dragged icon was a vector icon).
* Checked the other similar places, but all seems fine. Added a comment in
  one place why no data is leaked, although it may seem to at first sight.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 09:19:43 +00:00
Alexandre Deckner e522ba55ba * In single window navigation, tracker wasn't restoring the view origin (current scrolling) properly. It was reseting the origin even after
successfully loading the saved state. Reworked the logic to make that work properly (this also needed checking if the state read succeeded). This 
fixes part of #2441. There is still an issue when sometimes the view state is not saved properly, more tomorrow! 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 01:41:45 +00:00
François Revol fcbcb00e18 Turn off debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-16 00:06:42 +00:00
François Revol 2cf4975b4b Add FAT32 support. This allows the bootloader to find a BFS image file (currently named BEOS\IMAGE.BE) and start booting for it, until the kernel tries to mount the boot partition.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 23:54:04 +00:00
Michael Lotz a04a170937 bonefish + mmlr:
Don't use the spinlock in arch_debug_serial_puts if we're inside the kernel
debugger. This fixes a tripplefault when faulting with said spinlock held
(due to a NULL string argument for example).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 23:49:24 +00:00
Michael Lotz 945a6a41ac bonefish + mmlr:
* Add possibility to restart a complete pipe through B_KDEBUG_RESTART_PIPE.
* Implement tail in the kernel debugger making use of the former.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 23:43:27 +00:00
Axel Dörfler 669ab2141b * The "info" KDL command now also dumps the built-in SVN revision.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 21:24:32 +00:00
Alexandre Deckner 404bf9d1ab * Simply check if fTrashContextMenu->Window() is non NULL. This should be the definitive
solution :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 21:14:16 +00:00
Stephan Aßmus 1cbca49a83 zooey + stippi:
* Fix the calculation of the fTextRect member. The BeOS behavior (and also the
  previous Haiku behavior) was to recalculate the "bottom" always. This was not
  taken care of in SetTextRect() (needs to override the passed bottom).
* The insets are already tracked in fLayoutData, use this in
  _UpdateScrollBars() to calculate the correct data width/height (an
  improvement over the BeOS behavior it seems).
* Try to minimize the need to call _Refresh(), which reduces flickering a whole
  lot.
* Fix several instances where fTextRect was recalculated based on Bounds() and
  the saved insets, where it was broken when the BTextView was scrolled.

Fixes #2784.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 21:07:37 +00:00
Stephan Aßmus 431dc47dde Patch by Artur Wyszynski with some changes by myself:
* Resolved TODO: The type of the gradient is no longer encoded twice in the
  app_server link protocoll.
* Moved instantiation of the BGradient into the LinkReceiver::ReadGradient()
  method.
* Check success for (at least) ReadGradient() in ServerWindow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 19:47:00 +00:00