Commit Graph

34113 Commits

Author SHA1 Message Date
Ingo Weinhold
f6cace5aa2 TermView::Draw():
* Apparently Draw() can be invoked with new view bounds in effect before the
  FrameResized() hook has been invoked (I suppose that's not really kosher).
  Since TermView updates the terminal dimensions in FrameResized() and relied
  on the update rect passed to Draw() to translate to positions within the
  limits, an on-stack buffer could overflow, leading to #2851. Now we clamp
  the translated positions to terminal size.
* Draw the background areas right of the last column and below the last row
  explicitly instead of drawing an additional non-existing partial
  character/row.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 15:39:30 +00:00
Ingo Weinhold
28eaa574fd Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 14:19:19 +00:00
Ingo Weinhold
682c3066c7 Don't complain about running out of MTRRs before the CPU modules have been
loaded in the first place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 13:51:41 +00:00
Ingo Weinhold
1e3815ba3b After fork()ing we need to close the PTY master FD in the child. Otherwise
closing/killing the Terminal will not automatically wake up children
reading/writing the slave end. Fixes #3340 and probably #5395.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 13:49:30 +00:00
Ingo Weinhold
035edd562b Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 13:45:28 +00:00
Ingo Weinhold
21d9331efa Beautified the output of the "io_context" command.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 13:43:43 +00:00
Ingo Weinhold
0e4ea02d0a * Use add_debugger_command_etc() for adding the debugger commands.
* Added a "devfs_cookie" command.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-23 13:42:55 +00:00
Ingo Weinhold
4262055074 * Always reset the requests in WriterLocker::AcquireWriter() and
ReaderLocker::AcquireReader() before starting to wait. This could lead to
  busy waiting in loops in certain situations.
* Got rid of the ReaderLocker::AcquireReader(bool) version to avoid confusion.
* Cleaned up and fixed the code introduced in r25408 (VMIN, VTIME support):
  - Gave the second ReaderLocker::AcquireReader() parameter the same name as
    the corresponding one of WriterLocker::AcquireWriter() and fixed its weird
    semantics (one less than the desired number of bytes -- huh?). Since it was
    not set on the request, it didn't work correctly anyway.
  - tty_input_read(): The O_NONBLOCK return code was broken. It returned B_OK
    instead of B_WOULD_BLOCK. The O_NONBLOCK mode overrides VMIN/VTIME now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 23:05:39 +00:00
Adrien Destugues
ab7b656898 Patch by mt : localize expander.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 21:14:39 +00:00
Ingo Weinhold
0497cb9f12 VMAnonymousCache::_MergeSwapPages(): Missing check which could lead to a NULL
pointer access. Should fix #5453.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 19:03:34 +00:00
Ingo Weinhold
c8a0f6587d RequestOwner::Wait(): No need to publish the condition variable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 18:10:29 +00:00
Ingo Weinhold
28f8887517 * Made ProfileResult and ImageProfileResults BReferenceable.
* Added command line option '-S', which triggers a new summary mode. When
  enabled the image/symbol hits aren't counted for individual threads
  anymore, but summed up for all threads. The results are printed at the end.
  Works together with all profiling modes (inclusive, exclusive, callgrind).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 12:53:47 +00:00
Stephan Aßmus
a2ce05945a Invalidate one more pixel to the left/right of the slider knowb, to account for
anti-aliasing artifacts that extend outside the calculated knob-frame. Fixes
#2433.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 08:25:35 +00:00
Rene Gollent
e4a439b4a0 Fix several problems in BListView:
- SwapItems() did not correctly swap the item tops of the two items being swapped. This would result in quite broken/confusing behavior due to the view having the wrong idea of their current position.
- SwapItems() also did not pass the correct range to _RescanSelection(). This could result in the selection range getting quite confused when swapping items.
- _RescanSelection() did not always correctly reset fLastSelection, though this mostly only would've resulted in unnecessary but harmless work.

Fixes ticket #4253 and possibly some others.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-22 01:40:24 +00:00
Stephan Aßmus
45912b67a3 Patch by idefix that fixes scrolling the keymap list to the current entry
when the window is first opened. Thanks! Fixes #5445.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 21:59:27 +00:00
Stephan Aßmus
b2e1893c6e Added SetBorder() virtual method and feature. Could also be used by the Terminal
now to polish the tabbed look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 20:15:21 +00:00
Stephan Aßmus
481baf2eef Fix spelling in debugger invokation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 20:14:00 +00:00
Stephan Aßmus
43a7eb6ca5 Add comment explaining why MenusBeginning() is invoked before handling key events
with the command key pressed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 20:13:16 +00:00
Jérôme Duval
dd4974484f merged freetype 2.3.12
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 20:08:50 +00:00
Axel Dörfler
9d071e27f1 This should finally nail #5415:
* Since the same block can be in up to two transactions, it's very well possible
  that one shouldn't write all transactions in a single run.
* Forgot to pass on the iterator from BlockWriter::Add(transaction) to
  Add(block).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 20:03:52 +00:00
Fredrik Holmqvist
57c418cdd6 Update ACPI to 20100121.
Changes from ACPI include:
 * eliminate unnecessary invocations of the _STA method, which in turn can improve boot times.
 * Implemented an additional repair for predefined method return values.
 * Removed the obsolete ACPI_INTEGER data type.
 * Removed the unused UINT32_STRUCT type, and the obsolete Integer64 field in the parse tree object.
 * Added additional warning options for the gcc-4 generation.
 * Enhanced automatic data type conversions for predefined name repairs.
 * Implemented automatic removal of null package elements during predefined name repairs.
 * Implemented a repair for the predefined _FDE and _GTM names.
 * Implemented additional module-level code support.
 * Fixed possible mutex acquisition errors when running _REG methods.
 * Fixed a possible memory leak during module-level code execution.
 * Removed messages for successful predefined repair(s).
 * Implemented a post-order callback to AcpiWalkNamespace.
 * Modified the behavior of the operation region memory mapping cache for SystemMemory.
 * Implemented an automatic repair for predefined methods that must return sorted lists.
 * Fixed a possible fault during predefined name validation if a return Package object contains NULL elements.
 * Implemented additional module-level executable AML code support.
 * Fixed a problem where an Operation Region _REG method could be executed more than once.
 * Fixed a possible memory leak for the Scope() ASL operator.
 * Implemented a run-time repair for the _MAT predefined method.
 * Implemented a run-time repair for the _BIF and _BIX predefined methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 19:46:35 +00:00
Rene Gollent
b1e7ac2a63 When using layout mode, we need to remove the tab from the layout before updating the selection, otherwise the correct view isn't unhidden in some cases.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 18:08:38 +00:00
Axel Dörfler
f24e3c9f1e * Fixed warnings and coding style violations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 17:22:34 +00:00
Ingo Weinhold
6a28c22f5c More refactoring:
* Renamed *ProfileResultImage to *ImageProfileResult.
* Separated the image result management from the *ProfileResult classes:
  - The general per-thread image management functionality does now live in
    Thread.
  - Introduced interface ImageProfileResultContainer which is implemented by
    Thread. An instance is passed to ProfileResult::AddSamples()/PrintResult().
* Made *ProfileResultImage independent of Image. The dependency is now to
  SharedImage only.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 17:16:59 +00:00
Rene Gollent
9546aa512f Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 16:31:50 +00:00
Rene Gollent
cf139460f6 Initialize members for all constructors. Otherwise using those constructors can potentially crash in Unset().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 15:48:09 +00:00
Fredrik Holmqvist
307dfe9300 Haiku had better usb ids for Wacom. Restored these, will also try contacting NetBSD to submit our changes back.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 13:22:48 +00:00
Fredrik Holmqvist
764d418a84 Update pci.ids from http://pciids.sourceforge.net/pci.ids version 2010.02.11
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 12:53:26 +00:00
Fredrik Holmqvist
cd67a68623 Update usb devices and vendors list from NetBSD version 1.544
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 12:51:34 +00:00
Axel Dörfler
606105c62c * Reduced the maximum lock time to roughly a quantum (a little less might even
be better, though).
* This might help further with #4709.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 11:51:40 +00:00
Stephan Aßmus
d6d0e010f4 Designed new navigation arrows. I like Navigation_Left_2 and Navigation_Right_1
best.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-21 11:47:13 +00:00
Ingo Weinhold
5fc675d57e Some refactoring:
* Added new class ProfiledEntity which Thread derives from and which is the
  new dependency for the profile result classes (instead of Thread).
* Renamed *ThreadProfileResult to *ProfileResult and *ThreadImage to
  *ProfileResultImage and move ProfileResult[Image] into a new header/source
  file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 20:31:04 +00:00
Ingo Weinhold
8b64284b67 Handle va_list copying correctly. Fixes PPC build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 19:53:48 +00:00
Ingo Weinhold
19c4af89fd Superfluous virtuals (declared in the base class already).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 18:08:07 +00:00
Ingo Weinhold
a39c92c2df Removed superfluous typedef.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 18:04:32 +00:00
Ingo Weinhold
24244d3ceb idle_scan_active_pages(): vm_page_requeue() requires the caller to mark the
page accessed for the access debugging feature.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 17:24:14 +00:00
Ingo Weinhold
4a1f668383 * Also print the page for the page related asserts.
* Used vm_page::IsMapped() to simplify things.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 17:17:22 +00:00
Ingo Weinhold
0ea0681f58 Made the "message" command work correctly again. Broke it with my recent
changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 17:16:21 +00:00
Ingo Weinhold
3e5343f226 free_cached_page(): Removed incorrect asserts. The same ones appear a few
lines later anyway, after the cache has been locked and it has been verified
that the page is still a candidate. Fixes #5432.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 16:45:44 +00:00
Ingo Weinhold
bd7645a12a * Made vm_page::state private and added accessor methods.
* Added kernel tracing for page state transitions.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 15:57:44 +00:00
Ingo Weinhold
98d2fc4b23 Worked around "uninitialized variable" compiler warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 14:23:18 +00:00
Ingo Weinhold
8b522fcfe6 Changed ASSERT_[ALWAYS_]PRINT() to add the additional output to the panic()
message instead of printing it before calling panic().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 14:19:52 +00:00
Ingo Weinhold
9e4ad0799b * Pass the panic() format and args through to kernel_debugger_loop(), so that
the message doesn't get truncated.
* No longer print the "PANIC:" prefix when entering the kernel debugger via
  kernel_debugger().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 14:00:56 +00:00
Ingo Weinhold
cd694fdbfa * Fixed abuse of the DoublyLinkedListLink. TemporaryVariables have an
explicit queued field now. Fixes #5352.
* set_debug_variable(): Disallow symbol variable names.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 13:19:41 +00:00
Ingo Weinhold
477fd1be55 Added assert in free_page().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 12:37:48 +00:00
Ingo Weinhold
211c63df5a reserve_pages(): When cannibalizing pages from the own cache it didn't check
whether the pages where mapped. Was introduced already in r22731.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 12:36:49 +00:00
Ingo Weinhold
d36b9aef3e Added vm_page::IsMapped() for convenience.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 12:29:42 +00:00
Ingo Weinhold
9824ded0b0 cache_io(): Also requeue the last touched page to keep things roughly LRU
sorted.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 10:51:53 +00:00
Adrien Destugues
62420a09d4 Update Russian and Hungarian translation from hta.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 10:46:50 +00:00
Jérôme Duval
cd439bd9e3 We now pin sense the headphone pin widget to check if something is plugged in. Use this to disable/enable speakers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-20 00:28:46 +00:00