Commit Graph

25379 Commits

Author SHA1 Message Date
François Revol
4f5d92c0d5 Fix bad args for VLC.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 21:17:06 +00:00
Oliver Ruiz Dorantes
6971db8cca Do not leak the delegate, as suggested by Stippi
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 21:01:57 +00:00
Stephan Aßmus
2384ec2866 Preparation for using layout-management, improvements to absolute layout for
the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 20:04:31 +00:00
Oliver Ruiz Dorantes
b9068dbf95 - Change LocalDevice getter for HCI id
- Fix some new some std::nothrow on critical allocations among kit and server
- Some styling



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:47:01 +00:00
Stephan Aßmus
072f1c320c Updated to new header indentation style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:42:51 +00:00
Stephan Aßmus
bc6c545be0 80 char/line cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:35:14 +00:00
Stephan Aßmus
8baeb63aa2 Probably not good to invalidate the layout in the destructor...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:31:22 +00:00
Stephan Aßmus
5d2a1fb46e More style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:29:58 +00:00
Stephan Aßmus
3e3d7acb90 In some ways, this is unrelated, but I had to combine this anyhow:
* Extend the PaneSwitch BControl from Tracker, so it can draw on/off labels.
  This has the added benefit that you can click the label to expand/collapse,
  like for example in the Get Info window (Permissions).
* I also added font-sensitivity features to PaneSwitch, and it can be used
  in layouted windows (untested).
* This made the "DrawButton" in the Installer superfluous.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 18:25:37 +00:00
Ingo Weinhold
a7ccfc910c Added WaitObjectListener destructor. Hopefully fixes the gcc 2 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 14:53:18 +00:00
Ingo Weinhold
227fe7d34a * Scheduler/wait object listener:
- Moved scheduler listening interface to <listeners.h> and added more
    convenient to use templatized notification functions.
  - Added a listener mechanism for the wait objects (semaphores, condition
    variables, mutex, rw_lock).
* system profiler:
  - Hopefully fixed locking issues related to notifying the profiler thread
    for good. We still had an inconsistent locking order, since the scheduler
    notification callbacks are invoked with the thread lock held and have to
    acquire the object lock then, while the other callbacks acquired the object
    lock first and as a side effect of ConditionVariable::NotifyOne() acquired
    the thread lock. Now we make sure the object lock is the innermost lock.
  - Track the number of dropped events due to a full buffer.
    _user_system_profiler_next_buffer() returns this count now.
  - When scheduling profiling events are requested also listen to wait objects
    and generate the respective profiling events. We send those events lazily
    and cache the infos to avoid resending an event for the same wait object.
  - When starting profiling we do now generate "thread scheduled" events for
    the already running threads.
  - _user_system_profiler_start(): Check whether the parameters pointer is a
    userland address at all.
  - The system_profiler_team_added event does now also contain the team's name.
* Added a sem_get_name_unsafe() returning a semaphore's name. It is "unsafe",
  since the caller has to ensure that the semaphore exists and continues to
  exist as long as the returned name is used.
* Adjusted the "profile" and "scheduling_recorder" according to the system
  profiling changes. The latter prints the number of dropped events, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 13:47:52 +00:00
Ingo Weinhold
1c800aa1f9 Updated TODO.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-23 12:19:36 +00:00
Ingo Weinhold
9d7f0c336a * Moved the TableColumn subclasses to TableColumns.{cpp,h}.
* Added Int32TableColumn and BigtimeTableColumn classes.
* Evaluate the timestamps of the events that have one and maintain the
  fLastEventTime field, so we get estimated team/thread creation/deletion
  times.
* Added some columns to the threads table (ID, creation and deletion time).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 23:32:33 +00:00
Ingo Weinhold
b623e81cf7 The string setter didn't reset the flags.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 23:22:16 +00:00
Ingo Weinhold
f57c87ac31 Added creation and deletion time getters to Team and Thread.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 23:21:39 +00:00
Ingo Weinhold
1ad26e2a7f Swapped k{Up,Down}SortArrow*. This not only makes the naming more intuitive
(the "down" arrow actually points down, now), it also uses the arrows
consistent with Tracker -- i.e. arrow pointing down means ascending order.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 22:55:15 +00:00
Ingo Weinhold
146f113fec Fixed issues with the scheduling events. In the listener callbacks we
potentially want to notify the profiler thread (i.e. wake it up), which can
cause another scheduling event notification. That is we have to make sure that
event buffer is in a consistent state at that point (i.e. wake up the thread
at the very end of the callbacks). Furthermore the ThreadEnqueuedInRunQueue()
callback can be called with spinlocks besides the thread spinlock being held. In
particular waking up threads also happens in the condition variable code with
a static spinlock being held. Trying to notify the condition variable the
profiler thread is waiting on in such a case would be a guaranteed deadlock.
Hence we avoid doing that, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 22:15:27 +00:00
Ingo Weinhold
4a559f388b simple_enqueue_in_run_queue(): Between having found the insertion point and
manipulating the queue is a particularly unsuitable place for calling the
listeners, as they wouldn't be allowed to e.g. unblock threads, since that
would screw the run queue.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 22:03:56 +00:00
Oliver Ruiz Dorantes
9a597aaebd Fix JamFile / style
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 21:00:58 +00:00
Oliver Ruiz Dorantes
620b8b6e4c Class name starts with uppercase/ style
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 20:59:17 +00:00
Stephan Aßmus
3861c65e89 * Make the source selection not accidentally reject the boot partition because
it isn't BFS... (like perhaps ISO9660 with write-overlay ;-)
* Reject a lot more situations as valid targets. (No more devices when they
  already have child partitions, no more extended partitions themselves, also
  use a minimum size.)
* Remove the partition ID from the menu item name. I don't know why the user
  would be interested in this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 20:21:39 +00:00
Stephan Aßmus
bbab3b46ce Whoops, that was for debugging the fallback code path...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 19:57:08 +00:00
Stephan Aßmus
90562b72b7 Try really hard to launch DriveSetup. The registrar may have trouble to launch
an app by signature if the mime database is incomplete. Like on a boot CD.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 19:55:47 +00:00
Axel Dörfler
636ccbf306 * Write the identifier as attribute to the file to make later checks possible.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 15:58:29 +00:00
Axel Dörfler
3b9dec1c07 * remove_dir() can no longer remove the base dir.
* Added a remove_dirs() that can reliably clean up the mess afterwards.
* Added option -b to set an alternative base dir.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 15:32:56 +00:00
Stephan Aßmus
5be48305c2 Small cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 14:56:10 +00:00
Stephan Aßmus
2d294045c7 Add an extra option to isvolume to check if the underlaying partition is
perhaps read-only, while the volume appears to be writable because of the
filesystem overlays.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 14:45:29 +00:00
Stephan Aßmus
acc632c7ec Make it clear from the API that the volume passed in is not touched by the
function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 14:13:45 +00:00
Axel Dörfler
97f89e0360 * All files now get unique, and verifiable contents.
* Added argument -c|--check-interval to determine how often the file contents
  are checked.
* Added some statistics.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 13:01:54 +00:00
Ingo Weinhold
7615c5eee5 Removed superfluous TableModel::GetColumnName(). The TableColumns have a name,
anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 12:23:43 +00:00
Ingo Weinhold
3e9f9e8672 Factored subclass DelagateBasedTableColumn out of TableColumn. This allows to
implement the TableColumn interface without a column delegate.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 12:16:25 +00:00
Ingo Weinhold
fc0965bb05 Use Variant instead of void* for values in the table model.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 11:56:44 +00:00
Ingo Weinhold
4e632511e4 Added class Variant, a typed union-like wrapper for a single value.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 11:55:26 +00:00
Stephan Aßmus
4ab94faa39 The BMessage constructor of BScrollBar had a couple of rather important
omissions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 09:17:38 +00:00
Stephan Aßmus
872c998bee Don't break the BeOS build...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 08:18:39 +00:00
Stephan Aßmus
f4aaf23e06 Draw the playback mark a bit nicer in the playlist window.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 08:17:24 +00:00
Ingo Weinhold
486725aad1 * Use Table instead of BColumnListView.
* Partially implemented a respective table model. At least the thread names can
  be seen now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:28:42 +00:00
Ingo Weinhold
ffa1d866c6 fThreadsPage is already initialized to the object we want to use.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:26:22 +00:00
Ingo Weinhold
82d9e19758 Added Thread::Name() getter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:23:29 +00:00
Ingo Weinhold
488f3fb86a First sketch of class Table which wraps BColumnListView to provide at least some
reasonable model/view separation. *sigh*


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:22:45 +00:00
Michael Lotz
22a6e4bb80 Only use 2 bytes of the signature instead of all four. Even though the specs
clearly state that the other two bytes need to be 0x01 (and they always did,
even back to the very first ATA/ATAPI specs), I have one device here that
doesn't set the sector count register to 1. Since those two bytes are the unique
ones of the signatures anyway, it shouldn't harm to just ignore the others.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:14:33 +00:00
Philippe Houdoin
0750bc97a5 There is no more "default" fortune file.
Instead, let's call /bin/fortune without specific file by default to use its random selection 
feature.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 23:58:32 +00:00
Stephan Aßmus
da34a08541 Do not scale the scroll bar thumb size between min size and max size, but
between 0 and max size and restrict to min size afterwards. This leads to more
consistent behavior and a more reasonable scroll bar size until the minimum
size is reached. And it also fixes #3801. Probably also fixes the bug where
some Pe windows could not be scrolled, or only scrolled very little. I assume
this because a special trick is used for proportional scroll bars in Pe. It
does not set the proportion, but only large steps and then the proportion is
calculated from that. But since the minimum size was not taken into account
before, it would have exactly this inconsistency. Since the size now ranges
from 0 to max, this should now be in sync. But I didn't have a Pe window handy
which exposed this bug to confirm my assumption...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 22:12:27 +00:00
Stephan Aßmus
a31d4f9d29 Init global fonts before BWidthBuffer. Probably cleaner, since it may use
some fonts already, but I have not looked...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 22:08:11 +00:00
Stephan Aßmus
8d18637080 * Added setting for "Ignore Double Click". I assumed it to be the desired
behavior to ignore double clicks in case someone did it out of habbit, but
  wouldn't expect an app to launch twice because of that. However, some people
  may want the plain/straight button behavior, as testified in #3800. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 21:39:14 +00:00
Stephan Aßmus
b518478165 More style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 21:06:10 +00:00
Axel Dörfler
59b3d28a25 * Wrote a test application trying to reproduce bug #2197, ie. modelled after
Mozilla's PR_NewTCPSocketPair() -- unfortunately, it doesn't seem to work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 21:01:25 +00:00
Oliver Ruiz Dorantes
b09fa0e435 - Fix Jamfile
- Avoid constructor in parent class



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 20:59:47 +00:00
Stephan Aßmus
c0d8a10f50 Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 20:49:32 +00:00
Ingo Weinhold
08e34e27d4 * Added team and thread management to Model.
* ModelLoader does now at least evaluation team and thread added/removed events.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 20:33:15 +00:00
Oliver Ruiz Dorantes
c3053cacff - Add candidate interface for addons with custom configuration for LocalDevices.
- Add example implementation for Devices which need issue a Reset Command



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 20:04:24 +00:00
Axel Dörfler
a87124634a * Our INADDR_* and IN_CLASS* macros were mostly wrong - they are supposed to
be in host endian order.
* Adapted ipv4 code that automatically finds a netmask to this change.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 19:21:52 +00:00
Axel Dörfler
d31093e866 * Start of a test application to hopefully be able to reproduce the remaining
BFS problems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 15:36:24 +00:00
Ingo Weinhold
0b6cffb656 Added BDebugEventInputStream::SetTo() for initializing with a memory buffer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 15:29:11 +00:00
Ingo Weinhold
bc2e00c1c7 _user_system_profiler_start(): Check the sampling related parameters only when
sampling is requested at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 15:26:16 +00:00
Ingo Weinhold
e0518baa0c Fixed incorrect loop condition. Thanks Francois for reviewing! (and sorry for
mistreating your name -- Haiku's svn is to blame :-)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 12:30:54 +00:00
Ingo Weinhold
113a493073 * Removed the non-STL version of the code.
* Removed the _PointerList_ definition -- instead include <ObjectList.h>.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 11:45:19 +00:00
Ingo Weinhold
04eb9ba18e Patch by "VinDuv" (Vincent Duvert?): Added FSShell support for devices on
MacOS X.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 10:21:03 +00:00
Michael Lotz
d102012d3a Initialize the device_status field of the CCB. This makes modules using raw
commands work that check this value (like the CDDA filesystem, so audio CDs
work now).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 00:59:24 +00:00
Ingo Weinhold
8b3b05cbf9 Synchronize the TSCs of all CPUs early in the boot process, so system_time()
will return consistent values. This helps with debug measurements for the time
being. Obviously we'll have to think of something different when we support
speed-stepping on models with frequency-dependent TSCs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 00:38:11 +00:00
Michael Lotz
8c5cccce46 * Explicitly check device selection success. If device selection failed, assume
there is no device. Should fix long reset timeouts when only device 1 is
  present and therefore device 0 can't be selected.
* In case a device reset error is reported, don't try to identify/use the device.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 22:14:02 +00:00
Philippe Saint-Pierre
23079ac126 Modified the DrawLatch routine to make the latch vertically centered.
* It's particularly notice-able with big fonts.
 * I did put the latch's width and height in constants.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 17:45:39 +00:00
Ingo Weinhold
4f1804a109 * Renamed: MainModel -> Model, MainModelLoader -> ModelLoader
* Some debug cleanup in ModelLoader.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 16:29:27 +00:00
Stephan Aßmus
fc235d5599 Patch based in large on work done by Philippe Saint-Pierre:
* When a BApplication is created, the interface kit globals for this team
  are initialized, including be_plain_font, be_bold_font and be_fixed_font.
  The plain font specifically is assumed the default font for all BViews.
  A BView is not required to every set the font, it will then just be the
  plain font, because the app_server already assigned it when the view is
  created. Here is where the problem starts. When the system fonts change,
  they change on the app_server and are picked up by new applications. Old
  applications will run with the old fonts, because the values remain the
  same and are stored in the already initialized be_*_font globals. So this
  was never a problem. What was a problem is that the app_server would use
  the current plain font for applications which were already initialized
  before the font was changed, so the values in their be_plain_font would not
  match the values in the server side font used when creating new views.
* This patch already prepares for the situation in which client applications
  want to update their be_*_font globals. This needs to be a manual act of
  the client applications, otherwise we would break existing apps. Maybe we
  could automate this for BWindows with the B_AUTO_UPDATE_SIZE_LIMITS flag
  and any child views with B_SUPPORTS_LAYOUT.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 15:37:40 +00:00
Ingo Weinhold
65d2b8a8e9 * Introduces VMCache::CanWritePage() returning whether the given cache can
theoretically write the given page.
* page writer: Fixed the incorrect check whether a temporary page can be
  written by using the new CanWritePage().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 15:19:41 +00:00
Philippe Saint-Pierre
fe8e2eb13d * fix for coding style violation
Thanks Axel!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 13:05:14 +00:00
Philippe Saint-Pierre
003491a5c1 This patch fixes the way the DefaultDecorator reads its colors
from DesktopSettings.  

It allows you to change the tab color (focused and non focused)
for new windows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 12:05:07 +00:00
Stephan Aßmus
b40fb3c7b9 This patch deactivates accelerated graphics driver functions and also the double
screen height trick for using double buffering with an offscreen half of the
frame buffer. Whenever I run app_server without this patch, it frequently
locks up in weird ways. Additionally, app_server uses less CPU for many graphics
operations, notably the ones that require any blending, ie reading frame buffer.
This should be even more noticable for slow computers. The only draw back is that
slow computers may suffer a bit when just dragging a window, since that is
now performed on the CPU. However, I have high doubts that the benefits don't
outweight the drawbacks, and the feedback I have received indicates that as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 12:01:06 +00:00
David McPaul
3b63cb8a3a style cleanup, hopefully no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 11:45:27 +00:00
Axel Dörfler
8a26f35a6d * Sequential write accesses were never detected, due to an incorrect check.
* The previous code would have scheduled a single page to be written out (if it
  would have ever been triggered), now we schedule the complete previous write
  access. This greatly speeds up a "dd if=/dev/zero of=test ..." beyond the
  size of available memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 08:02:51 +00:00
Ingo Weinhold
c442235ebd WiP:
* Added an abstraction for getting an BDataIO, DataSource and derived classes,
  which allows to move I/O completely out of the GUI threads.
* Fleshed out application start, window creation, and file loading. We do now
  create a window for every command line argument and load the referenced file
  or, if none, create an empty window.
* Some improvements in the file loader. It does now correctly load the file,
  but doesn't process the stored data yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 23:55:17 +00:00
Ingo Weinhold
4d8d8c1f38 * Added a "reserved" field to the debug event file header to align it to 8
bytes.
* strlcpy() isn't a particularly good string compare function.
* BDebugEventInputStream::_GetData():
  - Also need to reset fBufferPosition to 0 when the buffer is empty.
  - Fixed read position.

BDebugEventInputStream does now actually read the files written by
BDebugEventOutputStream.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 23:44:20 +00:00
Ingo Weinhold
1cdc2fb608 Align the entries in the event buffer to 4 bytes at least. Usually CPUs like
that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 23:36:59 +00:00
Michael Lotz
14d5277c14 Remove dead code of ATA bus_manager. Note that the new ATA bus_manager now has
it's own target named ata and doesn't reuse the ide name. Because of that we
can also add it to the build by default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 23:02:54 +00:00
Michael Lotz
ca68245eb7 * Wrote a new infoblock header according to ATA/ATAPI-6 that is cleaner and more
verbose than the old one. Removed the latter.
* Put some of the hardcoded values into defines for more clearity.
* Report more detailed device type for ATAPI devices and report removable
  media based on the bit in the infoblock as well.
* Rename the channel ID attributes back to ide to let the hack in scsi_periph
  work that then publishes the devices under the disk/ata[pi] tree.
* Also disable command queueing for ATAPI devices.
* Remove remnants of CHS support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 22:15:29 +00:00
Axel Dörfler
4f65f5dca0 * Patch by Olivier to fix the function key assignments, a.k.a. as bug #2853.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 21:07:11 +00:00
Axel Dörfler
21543141dd * Applied slightly changed patch by Olivier that adds basic xterm style mouse
support, thanks!
* This probably closes bug #2854, confirmation pending.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 20:59:08 +00:00
Axel Dörfler
728c7f10e1 * Fixed warnings.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 20:57:33 +00:00
Michael Lotz
5a0bca36e0 Unset the debugger variables before evaluating support to ensure that in case of
error we do not reuse old values from a previous KDL session. This ensures that
we don't try to use a USB keyboard if it was un- and replugged on an unsupported
port.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 17:08:09 +00:00
Michael Lotz
00918d55dd Check if we support debug transfers before returning a pipe for debugging. We
only support UHCI for now. In case transfers aren't possible we therefore don't
make PS/2 keyboards unusable in KDL.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 16:05:47 +00:00
David McPaul
3b6deff377 same change for ata as ide, return a valid dma mode value for idestatus
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 12:46:05 +00:00
Ingo Weinhold
36e787103f Made BDebugEventInputStream::ReadNextEvent() nicer to use.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 11:17:24 +00:00
David McPaul
98b956380c made some changes according to the intel programmers guide. Our get_cpuid needs changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 05:02:42 +00:00
Michael Lotz
2c08a10439 * Wait slightly longer before falling into passive poll mode.
* Cause scheduler invokation when we handled an interrupt as the transfering
  thread can continue immediately. This brings small block transfer rates to
  a comparable level to the old IDE bus_manager. For large block transfers there
  is no speed difference at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30257 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 00:57:57 +00:00
Michael Lotz
5ea617fad1 Only wait for data request in the PIO case as before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 00:54:42 +00:00
Ingo Weinhold
3dc9bfd17e Beginnings of a graphical tool for analyzing the output of scheduling_recorder.
Doesn't do anything yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 00:31:03 +00:00
Michael Lotz
b6b82488df Apply block count maximum according to device capability. If the device supports
LBA48 we can allow a maximum block count of 65535 as we have a 16bit sector
count field available.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 23:08:44 +00:00
Michael Lotz
6a2bc1027b For packet devices we want to actually return a check condition when the device
indicates an error. Also we then need to pass through the request sense command
to the device. This should fix media status reporting for ATAPI.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 22:37:04 +00:00
Ingo Weinhold
20dbdc7914 Simplified the includes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 21:52:14 +00:00
Ingo Weinhold
1bb436e17f Accidentally removed char.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 21:47:15 +00:00
Michael Lotz
9323901253 Check the result after sending the packet, other error conditions like media
presence will be triggered there and we use FinishRequest() to catch those.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 21:32:00 +00:00
Michael Lotz
827f849a34 * Reworked device detection, we'll see how well this works...
* Reworked some of the transfer handling after reading the specs.
* Ensure that the device selection bit is set correctly for all commands.
* Generally disable interrupts and enable them only when expecting a DMA one.
* Renamed disk failure to device fault according to specs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 20:58:33 +00:00
Ingo Weinhold
2a48ded78b Added a simple tool "scheduling_recorder" that records scheduling information
(as generated by the system profiling interface) to a file for later analysis.
Only the analysis tool is missing, yet. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30245 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 17:41:46 +00:00
Ingo Weinhold
4db202f5f4 Defined a simple file format to store debug event streams as generated by the
system profiling interface and added classes BDebugEvent{Input,Ouput}Stream for
reading/writing those files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30244 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 17:38:21 +00:00
Ingo Weinhold
5b2f0f33f9 * Changed the interface of _kern_system_profiler_start(). The parameters are
passed in a structure now, so it is easier to extend it and ignore unused
  parameters.
* One can now select which system profiling events one is interested in.
* Added scheduling events to the system profiling interface. Those are pretty
  much the ones recorded when scheduler tracing is enabled. Still missing are
  the "wait object" events that allow to interpret what a thread is waiting
  for.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 17:35:28 +00:00
Ingo Weinhold
79257a4ad6 Added a listener mechanism to the scheduler (ATM only for scheduler_simple).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 17:24:58 +00:00
Rene Gollent
a7e67ab3f2 gcc4 build fix by Maxime Simon. Resolves ticket #3786. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 16:58:28 +00:00
Ingo Weinhold
4452146628 Split into different source files. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 10:49:53 +00:00
Ingo Weinhold
3c3d2b85cd * Moved the time_stats tool to src/bin/debug.
* Fixed some gcc 4 warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 10:08:06 +00:00
François Revol
e03e54d1a8 Add a text/x-patch mime so diffs open in Pe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 09:54:55 +00:00
Clemens Zeidler
9d7af84b45 - Fix a bug in the speedstep driver, now the cookie is initialized in open so multiple watching clients don't interfere any more.
- Cleanup and smaller issues in the preferences app.
- Add driver and preferences to the image.

The driver supports some Pentium M and VIA Centaur CPUs (1000 to 2100 Mhz) and need acpi to detect the cpu device, so you have to enable acpi in the kernel setting file to test it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 08:42:33 +00:00
Jérôme Duval
f1bd4cfe8c Patch from Raghu for 1st part of bug #2886. 'cd file' returns now "Not a directory".
The check is done in the same way in bash 3.2.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 21:06:07 +00:00
David McPaul
a56942d497 correct the model calculations for intel processors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 20:59:14 +00:00
Ingo Weinhold
3539fc6e19 page writer:
* When writing a page failed it is not a good idea to re-enqueue it at the tail
  of the modified queue, since that is definitely behind the page writer's
  marker and the page would be picked up again before reaching the end of the
  queue. If that happened with more than 256 pages, the page writer would keep
  picking up only those non-writable pages and make no more progress.
* When selecting pages also skip temporary pages, if there's no more swap space
  available, since trying to write those pages would most likely fail anyway
  (triggering the first problem).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 14:26:17 +00:00
Ingo Weinhold
644ab95496 Added support for providing a command line also for the system profiling mode.
Just as in the other mode the command is started and profiling stops when the
command terminates.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 12:17:44 +00:00
Ingo Weinhold
f568799e1b Don't leak the Team objects for teams that are gone.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 11:40:03 +00:00
Ingo Weinhold
adb0d19d56 Declared the function pointer parameter as such, thus making gcc 4 happy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 11:17:56 +00:00
David McPaul
718e31e37a display the DMA mode along with the theoretical transfer speed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 10:09:04 +00:00
David McPaul
4f797d0b59 return the actual dma mode on request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 10:07:15 +00:00
Stephan Aßmus
8152b7d177 Coding style consistency.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:56:58 +00:00
Stephan Aßmus
b71c18c4e8 Revert the unintentional commit from r30222. Sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:55:38 +00:00
Stephan Aßmus
4970545477 Make header self-contained.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:52:53 +00:00
Axel Dörfler
24b822d843 * No longer hold the write lock when calling Inode::FillGapWithZeros(), as this
potentially deadlocks as described in bug #3768. The system is still
  completely unresponsive, but gets back to a working state after some time now.
* Since the rw_lock is public, Transaction and InodeReadLocker no longer need to
  be friends with Inode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:51:42 +00:00
Axel Dörfler
e50b251243 * Applied patch by Olivier that fixes bug #1957. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:15:46 +00:00
Philippe Houdoin
2ee8423101 Fixed altivec code compilation.
Unfortunatly, avcodec plugin don't build yet, llint and lrint symbols are missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 02:10:51 +00:00
Rene Gollent
5227a704f6 GCC4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 01:32:21 +00:00
Philippe Houdoin
40d058a628 Enabled ppc and sparc specific yuv2rgb convertion code. UNTESTED yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 23:11:02 +00:00
Philippe Houdoin
7767db5a86 Quick fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 23:04:17 +00:00
Ingo Weinhold
8342d4cdd2 * Updated to use add_debugger_command_etc().
* Added "step" debugger command to single-step to the next instruction (of the
  topmost iframe).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 22:56:53 +00:00
Philippe Houdoin
b0e6125616 When $(TARGET_ARCH) is obvious, stop checking it, start assume it :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 22:56:50 +00:00
Ingo Weinhold
8753babd62 Handle kernel debug exceptions similar to those in userland. This allows to
continue kernel breakpoints -- we would just retrigger the breakpoint when
continuing before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 22:18:02 +00:00
Ingo Weinhold
31d9352ff6 Make sure kernel breakpoints are installed on all CPUs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 21:57:52 +00:00
Ingo Weinhold
48b0c6f93a debug_trap_cpu_in_kdl(): If the CPU running the kernel debugger exited and
re-entered it fast enough, we wouldn't leave the loop and thus cause a
deadlock, since we wouldn't process the ICI message telling us to halt. We do
now call smp_intercpu_int_handler() in the loop and guard the function from
being re-entered. This also has the advantage that we can execute code on all
CPUs in the kernel debugger, if we have to.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 21:55:40 +00:00
Stephan Aßmus
bd949d1715 Patch by Obaro Ogbo (nastee) with small changes by myself: The check of the
input_server filter if the screen saver should be run could be confused if
additional option flags were turned on. I've removed the SAVER_DISABLED
definition completely. Also, I renamed the confusing "fEnabled" member, which
really means "saver already running".

Thanks a lot! Fixes ticket #3474.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 20:00:01 +00:00
Ingo Weinhold
b447670286 * Removed most of the special-casing for kernel breakpoints in the kernel
enter/exit code. There's no real reason not to keep kernel breakpoints
  enabled when in userland (unless there are breakpoints installed for the
  team, of course).
* Enabled kernel breakpoints by default (check your kernel_debug_config.h,
  if you have overridden it!), since they don't really add any overhead
  anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 19:56:11 +00:00
Stephan Aßmus
5e71c7b1e5 Patch by Obaro Ogbo (nastee) with small changes by myself:
* Added "Close All in Workspace" menu item in the Window menu. The shortcut
  is 'Q', which is usually the Quit shortcut. Since Tracker prevents quitting
  via this shortcut, overriding it like this is ok, this was also discussed
  in the ticket #2833. I've tested that the existing functionality is not
  disturbed (ie Quit in the Settings panel still works, as does quitting
  Tracker via "hey Tracker quit"). I did not add the "Close All" menu item,
  since that feature is already available via DeskBar and when pressing the
  shift key before opening the Window menu.
* I did change the additional short cut. As with "Clean Up" versus "Cleanup Up
  All", it's now consistently the shift key, which you have to press.

Note to Obaro: The only other change was that one can set the target of the
menu item to be "be_app", that way one avoids dispatching the message in the
window. Thanks a lot for your work, Obaro!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 19:32:11 +00:00
Axel Dörfler
78e7cdaede * Removed the get_next_removed_vnode() call again - besides the problems Ingo
pointed out, there is also an unsolvable race condition with BFS that other
  file systems should share.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 18:29:12 +00:00
Axel Dörfler
992fba36ee * There is now a list of removed vnodes in Volume - while asking the VFS for
this seemed to be a good idea, there is one race condition that cannot be
  solved otherwise (the vnode must be added/removed to that list while holding
  the transaction lock, and we cannot guarantee that in the VFS).
* We are using an unused area of the in-memory bfs_inode to store the list
  links (bfs_inode::pad - this will also work on 64 bit platforms).
* Inode no longer adds a singly linked list link - the transaction list now
  shares the doubly linked list with the removed vnodes list.
* Added an in-memory flag INODE_IN_TRANSACTION to avoid searching an inode
  to be added in the list.
* Removing an attribute directory did not hold its write lock.
* If removing an attribute failed for some reason, the INODE_DELETED flag
  was not removed (the transaction would not have failed because of that).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 18:24:55 +00:00
Stephan Aßmus
71db5f0735 * Convert the preference window of Mail to use the layout-management. This is
a compile time option, the BeOS build should be unaffected. Axel can comment
  if he liked the version with the non-aligned/cluttered menu fields better...
* Many thanks to Francisco Castro, who submitted a similar patch in #3735.
  I had already done this work a couple of weeks ago, but never got around to
  commit it. Going to comment on a number of small issues with the patch in
  the ticket, otherwise it does pretty much the same thing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 16:20:15 +00:00
Axel Dörfler
22e78d6e65 * Another error found by Romain: the socket's mutex could be destroyed twice
in socket_create(). Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 12:51:49 +00:00
David McPaul
3da76c0bec added cache descriptions reported by Intel Atom processor
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 11:50:12 +00:00
Axel Dörfler
4e5191e9c1 * struct family now uses a DoublyLinkedList instead of a struct list.
* Added but commented out adding/removing chains to its family: this would allow
  the stack to unload protocol modules as soon as they are no longer needed.
  However, it currently does not work yet (double lock, we need a recursive lock
  here to allow this).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 11:11:37 +00:00
Axel Dörfler
7caa5d430c * Now gets the net_socket module in init_stack() to make sure it's initialized
as long as the stack is loaded.
* This fixes another regression from moving the socket API into the kernel.
* Thanks to Romain for reporting this!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:54:07 +00:00
Axel Dörfler
32537299cb * The "net_timer" command was never removed, causing sort_debugger_commands()
to hang when entering KDL, after having unloaded the stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:50:38 +00:00
Axel Dörfler
09a60e4bd4 * Since we moved the socket stuff into the kernel, we lost the ability to
unload the network stack. This now works again, although I didn't manage to
  do it without another lock.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:49:21 +00:00
Axel Dörfler
7722096951 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:31:48 +00:00
Stephan Aßmus
5f700c9b7c Patch in large part by Philippe Saint-Pierre:
* Update Font preflet to use the layout-management. This already fixes a lot
  of issues.
* The were more issues with switching to default fonts and reverting fonts.
  Some fixed by Philippe and some fixed by myself.
* The preflet currently contains a work-arround for the problem that the window
  does not yet have it's final size until after BWindow::Show() has been
  completed. To be able to center itself anyways, it will open outside screen
  bounds and center itself then.

Note to Philippe: I had to fix some stuff in the Interface Kit to make this
more smoothly, so I was able to remove some calls to Invalidate() and such.
Also, the preview boxen and the menu fields align correctly now. Sorry if this
gave your gripes... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:11:06 +00:00
Ingo Weinhold
1b9d2885d3 * Also pass the team arguments and thread names with the respective system
profiling events.
* profile: Avoid using get_{team,thread}_info() in common code paths. The
  system profiling mode is asynchronous, so the team or thread in question
  could already be gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:02:33 +00:00
Stephan Aßmus
1370f1b69e Of course it still needs to invalidate, d'oh. If the size isn't changed because
of invalidating the layout, we still need to draw...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 09:50:44 +00:00
Stephan Aßmus
b10020de06 Since a BStringView draws the text vertically centered, it should simply use
the B_FULL_UPDATE_ON_RESIZE flag. Removed the Invalidate() call accordingly
from InvalidateLayout(). Small cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 09:48:37 +00:00
Stephan Aßmus
84b7e12232 Both BTextControl and BMenuField layout the inner control at divider
+ frame width. BTextControl was even calculating it like this everywhere,
but then layouted like BMenuField. Now it's consistent and much easier to
align other controls with the text view or menu bar layout item.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 09:38:03 +00:00
Stephan Aßmus
699451e6f9 The fancy border is now 3 pixels wide.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 09:36:03 +00:00
Axel Dörfler
ddd8303099 * Added "is_in_socket_list" member to determine whether the socket is in the
sSocketList or not (to see if it has to be removed when the socket is
  deleted).
* This fixes the bug reported by Romain when trying to open an unsupported
  protocol (like AF_INET6). Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 08:37:00 +00:00
Philippe Houdoin
8a3c8a66b3 * Imported ppc and sparc architectures optimized codes from ffmpeg 0.5.
* Added Jamfiles to build libavcodec_ppc.a and libavcodec_sparc.a. 
  UNTESTED.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 23:38:05 +00:00
Rene Gollent
464e95c43f gcc4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 23:20:56 +00:00
Philippe Houdoin
370ed3de61 Updated to support other $(TARGET_ARCH) specific optimization more
easily: moved out of config.h some definitions that we could do 
dynamically per target architecture.

NOTE: ppc, m68k and sparc optimizations are currently missing and should 
be imported from ffmpeg 0.5 before we can build avcodec plugin for these 
targets. Hence why it's still X86_ONLY qualified.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 23:11:01 +00:00
Oliver Tappe
ed4f2d8805 Fixed a regression pointed out by Rene:
* Select() did not adjust fClickOffset, which resulted in the cursor
  position not being where on would expect (noticable when pressing
  cursor-up/-down)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 22:02:16 +00:00
Oliver Tappe
0af6bceba4 closing #3773:
* in BEntry::SetTo and BFile::SetTo, we now support entry-refs with
  absolute names, too, just like R5 does


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 21:54:06 +00:00
Stephan Aßmus
44e3e828a8 Patch by Raghu Nagireddy: Implement the -q option for netcat/nc:
-q seconds   after  EOF  on stdin, wait the specified number of seconds
                    and then quit. If seconds is negative, wait forever.
Well done! Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 20:01:47 +00:00
Stephan Aßmus
32ac8d0823 Patch by Maxime Simon: In the default font handling, make menu and plain font
synonymous, since they are the same font by default. This fixes the Default
button enabled/disabled state and ticket #3759. Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 19:40:03 +00:00