Commit Graph

26376 Commits

Author SHA1 Message Date
Axel Dörfler
4722f139ea * If we're in the kernel debugger, we won't even try to use ACPI to power off,
as we cannot do so with interrupts turned off (ACPI needs to allocate memory
  dynamically).
* Turn off interrupts right before going to sleep (_GTS), this at least works
  in VMware, maybe it also works on real hardware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-14 08:52:14 +00:00
Michael Lotz
7b7464670e OK, how completely can one mess up a single change? Fixed the intel_extreme
accelerant I broke.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 21:20:14 +00:00
Stephan Aßmus
7302e28d1b Added BTextControl test. BTextControl seems to need some love.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 19:50:01 +00:00
Michael Lotz
28f362c129 Again fix the previous commit. Obviously we only want to delete the disc object
if it actually failed to initialize. Thanks Stephan for spotting that.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 19:38:52 +00:00
Michael Lotz
7c57e58de9 * CID 874 and CID 875: Fix leaking the session object GetSession() allocates.
* CID 876: Fix leaking the disc object in case it fails to initialize.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 19:26:04 +00:00
Stephan Aßmus
21527c4e77 Added BScrollBar test.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 19:21:55 +00:00
Stephan Aßmus
21bb6bd22b * Update header indentation.
* Added BScrollBar::SetOrientation().
* Improved _DrawArrowButton() to have a good visual result even when the
  scroll bar does not have the standard width or height.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 19:20:18 +00:00
Stephan Aßmus
65785bf7fd * Don't do anything in SetOrientation() if orientation is the same as the
current one.
* When calculating the thumb and bar frames, handle the case when the object
  doesn't have a label, but does have an update text.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 18:42:32 +00:00
Michael Lotz
2f464b193f Fix the build of the intel_extreme.accelerant, I obviously compiled the wrong
target when I checked it. Move the target display_mode declaration back above
the check but remove the dereferencing assignment. If proposing the display
mode succeeds it also initializes target. Thanks luroh for noticing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 18:42:03 +00:00
Michael Lotz
479731a193 Fix previous commit, forgot to inlude <new> for use of std::nothrow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 18:25:26 +00:00
Michael Lotz
95d570323b * CID 145 and CID 146: Use delete[] to delete the arrays.
* Also use new(std::nothrow) for the allocation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 18:22:44 +00:00
Michael Lotz
6b9d141359 CID 1039: Dereference mode only after checking it for NULL.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 18:00:47 +00:00
Michael Lotz
c66c6997db CID 225: If the field size was <= 0 the field buffer wasn't allocated but still
used in the switch statement. Change that to continue early when a filed size of
<= 0 is encountered.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 17:31:13 +00:00
Michael Lotz
bbe2597fb6 CID 18 and CID 19: Fix leaking the cursor data.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 16:39:11 +00:00
Michael Lotz
246a908734 * CID 1012: Fix leaking the OffsetFile in case it fails to initialize.
* Use std::nothrow (the rest of the file already used it).
* We also have to keep the source file around and properly dispose it, as
  OffsetFile doesn't take ownership of it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 16:30:48 +00:00
Michael Lotz
062952adf7 Initialize fFile to NULL.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 16:26:02 +00:00
Michael Lotz
3e8d3c5f98 * CID 1090: Check the view pointer for NULL before dereferencing it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:55:15 +00:00
Michael Lotz
fccbe8f1a1 * CID 525: Check the return of _UpdateModeList() as otherwise fModeList can
still be NULL although it is used further down.
* CID 526: Check the front buffer to be available before using it in SetMode().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:51:16 +00:00
Michael Lotz
7c618f130f Remove accidentally introduced whitespace in last commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:30:19 +00:00
Michael Lotz
8050519bed CID 157: Fix usage of *covers instead of cover which in this case indeed is NULL
and should have lead to a crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:28:31 +00:00
Michael Lotz
4071a5a97b CID 930: Fix memory leak in error case.
Note that this file has a completely different coding style, violating ours for
consistency until the whole file can be cleaned up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:22:30 +00:00
Michael Lotz
84cd8e6902 CID 1251: If the NetStack::Init() fails, return the corresponding error instead
of setting the global net stack to a deleted value.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 14:41:42 +00:00
Michael Lotz
2391ca5568 CID 56: Fix the wrong NULL check.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 14:27:31 +00:00
Stephan Aßmus
ebcba0bec8 Free query in error code path. Fixes CID 927.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 14:04:13 +00:00
Michael Lotz
3ba6733d61 * CID 312 and CID 313: The device can be NULL in ReadLockPartition().
* CID 314 and CID 315: Same as above just for WriteLockPartition.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 13:57:40 +00:00
Michael Lotz
b1effc0c77 CID 316: If path can be null, path->InitCheck() shouldn't be used. Split it up
into two seperate checks instead and return B_BAD_VALUE on a passed NULL path.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 13:43:50 +00:00
Michael Lotz
020f56a07f CID 323 and CID 324: Also check the results of these dynamic_casts, sorry for
not combining with the previous commit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 12:36:17 +00:00
Michael Lotz
446d046c5e CID 325: Be defensive and check the results of the dynamic_casts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 12:28:46 +00:00
Ingo Weinhold
034fb25c4d * The image was create one byte too short. Fixes #2722.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 10:04:51 +00:00
Axel Dörfler
57b9debf76 * Some index updating functions did not take into account that not all nodes
are put into all indices. For example, symlinks aren't part of the size
  index. This fixes bug #2704.
* Also, Inode::NeedsTrimming() now ignores symlinks that have no data stream,
  it's const now, too.
* Added helper methods Inode::In{Name|Size|LastModified}Index(), and use it
  where appropriate.
* Clarified Inode::Create() description with regards to name vs. parent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 09:47:55 +00:00
Michael Lotz
bdff2c8222 * CID 1044: Add more explicit NULL check before dereferencing in TRACE statement.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 00:44:12 +00:00
Michael Lotz
4e9bf24dd5 CID 26: The status variable was shadowed inside the while loop causing the outer
status to always be B_OK, resulting in an incomplete buffer instead of an error
if the append failed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 00:28:29 +00:00
Michael Lotz
0c397beb9c CID 1021: Move NULL check before dereferencing "string" in the TRACE statement.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 00:10:40 +00:00
Michael Lotz
d02cde3053 CID 877: Fix memory leak in error case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 00:06:59 +00:00
Michael Lotz
2c0a05cce1 CID 1258: This was probably missed when replacing all "write" with
operation->IsWrite().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 00:01:48 +00:00
Fredrik Modeen
a426099957 fixes CID 455 Check for NULL and use std::nothrow
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 19:08:31 +00:00
Fredrik Modeen
2d9f1f59b3 fixes pointed by Axel and some stile changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 18:29:30 +00:00
Fredrik Modeen
327a88fbc1 fixes pointed out by Axel, and style changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 18:29:16 +00:00
Fredrik Modeen
80f39d66d4 fixes pointed out by Michael and Axel, thanks for pointing those out.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 18:06:52 +00:00
Michael Lotz
b57520d4a9 * Don't leak the decoded instructions in case the device object cannot be
allocated.
* Remove accidentally added debug device id.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 18:02:07 +00:00
Stephan Aßmus
8008c36e34 Fixed CID 1272. Looks like _addressLength is allowed to be NULL, but
at function exit, it was still dereferenced.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:31:48 +00:00
Stephan Aßmus
870dc73f78 Fixed CID 1292. If the allocation or adding to the list of the very first Buffer failed,
the buffer data would be leaked. Note that for failure to allocate later buffers, the
data is correctly freed in _FreeBuffers().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:24:32 +00:00
Michael Lotz
0a28b4e324 CID 1261: The "previous" list entry wasn't maintained, causing lost list items
when removing a non-first element.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:17:29 +00:00
Michael Lotz
5565f43e07 Check the allocation of the endpoint pipe object.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:10:35 +00:00
Michael Lotz
11b9aad7f7 * Use new(std::nothrow) everywhere (NULL checks were already there).
* Fix a warning if trace output is not enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:00:28 +00:00
Michael Lotz
8395debafa * CID 7: The fObjectArray that holds the usb_id to object association was never
freed.
* Also the allocation of said array was not checked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 16:48:41 +00:00
Stephan Aßmus
67710adc92 Fixed CID 1303. The config message was dereferenced in the constructor list.
I don't know if it can be NULL at all, but let's be defensive. It was
already checked later anyways.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 16:29:52 +00:00
Fredrik Modeen
f1ca556caf Fixed CID 321, 868: check item for NULL and delete recource leak
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 14:15:47 +00:00
Fredrik Modeen
ee652e3aab reverted to 11769 and added (std::nothrow)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 14:06:56 +00:00
Ryan Leavengood
dd84bf1de8 Reverting r27437 as per Axel's advice. The variable size is initialized by the
call to ElementAt. Marked CID 1306 as false.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 13:46:50 +00:00