Commit Graph

26148 Commits

Author SHA1 Message Date
Ingo Weinhold
697eb34c63 Moved libudis86 to headers/libs/udis86 and src/libs/udis86.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-21 12:58:16 +00:00
Stephan Aßmus
a560ab791b * Create the BColumnListViews with fancy borders.
* Add some spacing around most views in the top level layout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-21 12:07:11 +00:00
Stephan Aßmus
abe7a40cca Work around a GCC2 problem with dynamic casting a BHandler pointer to a BView
in BWindow::_FindView(int32 token). This fixes the BColumnListViews in
DebugAnalyzer and Debugger to draw their frames properly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-21 12:05:34 +00:00
Ingo Weinhold
c3edfca6e4 * If a stack frame is selected show its registers instead those of the top
frame.
* Some cleanup in ThreadListView.
* Unregister view listeners in the window destructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 19:26:47 +00:00
Ingo Weinhold
cba4143217 Added demangling support. Only implemented for gcc 4 yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 18:45:20 +00:00
Ingo Weinhold
8cd32d5b06 Added function demangle_name_gcc3() not used in the add-on. The whole demangler
should better be moved to a shared location. Eventually...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 18:43:38 +00:00
Ingo Weinhold
c9fc1d5064 Moved several classes into new "model" subdir.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 18:17:48 +00:00
Ingo Weinhold
0b60fa86e9 * Added DebuggerInterface::GetSymbolInfos() to get the symbols for an image.
* Added the beginnings of the debug info abstraction. Currently we can only load
  the symbols via the debugger.
* Added a job to retrieve debug info for an image. Extended the GetStackTraceJob
  to support waiting for image debug info to be loaded.
* Extended ImageInfo by text/data address and size.
* Removed StackFrameX86 and made StackFrame a simple non-polymorphic class
  featuring all the needed data. The really architecture-dependent is in the
  referenced CpuState already. Added Image* and FunctionDebugInfo* attributes,
  referring to the image respectively debug info for the function hit by the
  instruction pointer.
* Switched StrackTrace's StackFrame management from DoublyLinkedList to
  BObjectList. This makes it more comfortable to use.
* Changed the code for creating stack traces:
  - The creation of the StackTrace object and the main loop to collect the
    frames are now located in the no longer virtual
    Architecture::CreateStackTrace().
  - The decision how to create a StackFrame is based on the instruction pointer.
    If it hit a function for which debug info is available, the respective
    DebugInfo::CreateStackFrame() is used, otherwise we fall back to the new
    virtual Architecture::CreateStackFrame().
* Adjusted the stack trace view to also show function names (mangled ATM).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 17:20:49 +00:00
Ingo Weinhold
8b5ee1118a Added Worker::GetJob() to get a known job by key.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 16:49:31 +00:00
Stephan Aßmus
8f24c71102 Reverted my change to usage of _get_object_token_(), it already means to use
a cached token... doh! Thanks Axel!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:47:28 +00:00
Rene Gollent
3756e25935 GCC4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:37:33 +00:00
Stephan Aßmus
5c5195ee7e Fixed regression in SetViewCursor(). It wasn't possible anymore to switch
back to the system default cursor. For that cursor token, the global cursor
manager returns NULL.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:26:34 +00:00
Stephan Aßmus
1f9fd6d866 * Added BSplitView drawing code to ControlLook.
* BSplitView uses ControlLook to draw itself.
* Small refactoring in SplitLayout to implement IsAboveSplitter(BPoint).
* BSplitView updates the view cursor when the mouse is above a splitter.
* Standard splitter size is now 6 pixels, which is a bit easer to hit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:03:33 +00:00
Stephan Aßmus
01206002ba * Added NOTE to BListView destructor about not freeing the items.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:00:33 +00:00
Stephan Aßmus
262c5f651e * Small cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 15:00:11 +00:00
Stephan Aßmus
fa0ba1f855 Cache a view's server token. Avoids getting it for every
BView method that contacts the server.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 14:12:30 +00:00
Stephan Aßmus
19e179ca4f * Moved the implementation of SetViewCursor from the thread of the
window of the view into the application thread. This solves the
  race condition with asynchronous SetViewCursor and deleting the
  cursor immediately afterwards for real.
* The ServerApp now requires a reference to the current cursor,
  just in case...
* Added TODOs for caching the BView token, it's currently resolved
  for every single BView call that talks to the server... not good!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 12:11:49 +00:00
Stephan Aßmus
5d62f8e0e5 Make it possible to properly use operator= on BCursors by making sure the
reference counting is maintained correctly in the app_server. While reviewing
this code, I have my doubts that my previous solution for handling pending
SetViewCursor() calls is always working as it is intended.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 10:10:01 +00:00
Philippe Houdoin
76d87570c9 Fixed Haiku libpcap detection.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 08:54:46 +00:00
Philippe Houdoin
ec1b789c2e DebuggerInterface destructor wasn't virtual, raising a -Werror warning.
Fixed libdebug.so link.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-20 08:52:51 +00:00
Ingo Weinhold
b7c5bd634b Renamed Variant to BVariant and moved it to libshared.a.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 23:00:25 +00:00
Ingo Weinhold
15f040e596 Some work towards getting stack traces:
* Added a virtual Architecture::CreateStackTrace() and added a basic
  implementation in ArchitectureX86. Fleshed out StackTrace/StackFrame a bit
  and added StackFrameX86. This needs to be organized differently, though, so
  that we can get the maximum available information for each stack frame,
  depending on what info is available for the respective function.
* Added job to get the stack trace for a thread.
* Added stack trace related handling in TeamDebugger. Reorganized the thread
  state/CPU state/stack trace change handling a bit -- we're using a
  Team::Listener now, and do things asynchronously.
* Added a StackTraceView to display the stack trace of the current thread. No
  function name available yet, otherwise working fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 22:13:32 +00:00
Ingo Weinhold
1ae2cffc83 Added ReadMemory().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 21:58:48 +00:00
Ingo Weinhold
bbd7464f37 Added the sorting column related methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 21:56:08 +00:00
Ingo Weinhold
b31acfda4b Use a BObjectList instead of a DoublyLinkedList for the TableModelListeners.
Otherwise we can't add a listener to more than one model.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 21:54:48 +00:00
Ingo Weinhold
15b6b23934 Added view to show registers. Doesn't look particularly nice, but seems to work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 17:31:24 +00:00
Ingo Weinhold
8c724eb86c We already have a reference and want to get rid of it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 17:29:39 +00:00
Ingo Weinhold
028b98e7ff Added missing TableRowsChanged() to TableModelListener and made Table
handle it, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 17:28:33 +00:00
Ingo Weinhold
36c16b9292 Added Is{Number,Integer,Float}() methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 17:26:59 +00:00
Ingo Weinhold
2a3974d313 Added constructor versions of the Group and Grid layout builders that take a
BWindow* parameter. They set the newly created layout on the window, which saves
the API user to do that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 15:28:00 +00:00
Ingo Weinhold
6383ae9c30 Added Architecture and DebuggerInterface to the TeamDebugModel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 15:17:58 +00:00
Ingo Weinhold
495676cab6 * Implemented Worker class, which executes Jobs in a separate thread.
* Implemented a job for getting a thread's CPU state.
* The team debugger uses a worker now. ATM only for getting the CPU state for
  stopped threads.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 15:09:56 +00:00
Axel Dörfler
3609af391d * Renamed _kern_reserve_heap_address_range() to _kern_reserve_address_range(),
and added a _kern_unreserve_address_range() as well.
* The runtime loader now reserves the space needed for all its areas first
  to make sure there is enough space left for all areas of a single image.
* This also fixes the final part of bug #4008.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 11:09:21 +00:00
Axel Dörfler
7200c6f499 * Fixed warnings.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 10:17:42 +00:00
Axel Dörfler
82db8a9e15 * Added an "unmapAddressRange" argument to the file mapping syscall. This is
the first part of making the runtime loader behave itself; it should already
  make Clockwerk run okay with any number of translators (even if not all of
  them will work yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 08:23:11 +00:00
Ingo Weinhold
c42fe1eb57 More work on the architecture abstraction, particularly regarding information
about what registers the architecture has and how to get them from the CpuState.
Implemented the respective x86 part.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 00:05:45 +00:00
Ingo Weinhold
3c4cb05b95 We can't only use a single debug context, if we want to allow multiple threads
to play with us without blocking. Implemented a pool of debug contexts instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 22:37:16 +00:00
Ingo Weinhold
b6aff5aa83 * Added notifications for thread state/CPU state/stack trace changes. The team
window listens for those and updates the buttons correctly.
* Added basic handling for the thread stopping debug events in the team
  debugger.
* Forward the thread run/stop/step requests to the team debugger and actually
  run/stop/step the thread. Running/stopping works, all three stepping actions
  just step by a single instruction ATM, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 21:45:14 +00:00
Axel Dörfler
18882afba2 * Removed accidental leftover in a GCC4 only codepath.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 20:58:42 +00:00
Ingo Weinhold
a81bb42a93 Beginnings of the architecture abstraction.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 19:57:46 +00:00
Ingo Weinhold
1f2a566cd6 Accidentally checked in.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 19:05:05 +00:00
Clemens Zeidler
75a666aa95 Embedded Controller driver, used the BSD driver as base. Thanks to Ithamar for pointing out that I need this driver to read the acpi battery status which now works for me (driver coming soon).
My laptop now really switch off on shutdown :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 18:30:06 +00:00
Clemens Zeidler
5f6906e1eb - Add some more acpi function to the acpi module and acpi device module. Need this functions for the embedded controller and battery driver.
- Now also use the acpi handle to call a function and not use the path to get a handle and then call the function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 18:18:40 +00:00
Ingo Weinhold
f208695cc1 Moved all interaction with the kernel/debugger interface into new class
DebuggerInterface. This will simplify adding support for remote debugging
eventually.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 17:57:37 +00:00
Axel Dörfler
99a8d30156 * Changed the whole thing to use the layout engine, which makes it work okay
with larger font sizes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 17:19:32 +00:00
Axel Dörfler
c39811b8b3 * Fixed stupid typo with big consequences as pointed out by Rene. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 14:29:15 +00:00
Ingo Weinhold
ae53f49064 * Changed the layout of the team window. Trying a single window approach.
* Added Run/Step* buttons.
* Added some handling for selection in the thread list.
* Extended listener mechanisms all over the place (in models and views).
* The team debugger now gets the initial states for the team's threads.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 00:35:12 +00:00
Ingo Weinhold
6d9fec816e Added selection support to Table.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 00:23:16 +00:00
Ingo Weinhold
2903bc659c * Removed the title creator method. Just set the title in the constructor
instead.
* Used the new layout builders. Now that's how layout code should look. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 19:42:11 +00:00
Rudolf Cornelissen
3ce78c81c4 added basic analog connected screens detection using EDID fetched info while keeping the old method (load detection) as fallback. This should improve the driver choosing the correct output connector for primary video on some cards.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 19:20:02 +00:00
Jérôme Duval
2dcab9c100 delete miidevs headers occurrences and have the drivers use the common generated miidevs header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 18:40:11 +00:00
Axel Dörfler
834a9474ac * Fixed bug that prevented the font state to be properly popped. It could be
solved more efficiently by adding a new app_server call for this, though.
* Fixed stupid operator precedence bug that caused BView to always archive
  everything, instead of only those items with their archiving flag set.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 16:50:14 +00:00
Axel Dörfler
f3b1ada54f * Moved class BStringItem into its own source file.
* Changed BStringItem::Update() to set a better baseline offset and height;
  this should improve vertical text placement.
* Fixed a bug in BStringItem::Update(): it used the owner to determine the
  width, but must use the font passed in instead.
* Coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 16:26:17 +00:00
Axel Dörfler
08a3563801 * Added layout-friendly constructor.
* Reordered functions to match the order in the header (and vice versa).
* Removed unused private functions.
* Updated the header to follow our coding style.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 14:56:57 +00:00
Ingo Weinhold
42f07f3fea * Added ImageListView showing the list of images. It will probably eventually
become a tree view, showing the source files as subitems of the images.
* Added the image list to the team window and changed the layout more towards
  what it's intended to look like.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 14:18:55 +00:00
Axel Dörfler
160f2d1081 * Added private header defining __gUmask which is now used everywhere where
needed.
* Some cleanup in Directory.cpp, and File.cpp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 14:09:40 +00:00
Axel Dörfler
0bb8521b68 * create_directory() did not take the umask into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 14:07:24 +00:00
Ingo Weinhold
2898a353e2 Use a less lazy method to update the threads list view (use the table model
listener mechanism to inform about the exact changes instead of rebuilding the
complete list).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 13:45:07 +00:00
Ingo Weinhold
b15883863d * Init a debug context and set the team debug event flags.
* Handle the "thread/image created/deleted" events, maintaining the Team's
  lists.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 13:40:10 +00:00
Ingo Weinhold
d68351089d New AddThread() method.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 13:35:27 +00:00
Ingo Weinhold
94af2f4293 Removed some debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 13:34:31 +00:00
Ingo Weinhold
8c2d467ed7 * Renamed AbstractTableModel to AbstractTableModelBase.
* Added listener support to TableModel.
* Table does now listen to the model and adds/removes rows accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 13:31:33 +00:00
Axel Dörfler
e5c5e337e4 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 10:00:26 +00:00
Axel Dörfler
75557e0ac3 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 09:55:07 +00:00
Axel Dörfler
9871124eb2 * Added missing hooks with a description of what's missing for clarity.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 09:32:30 +00:00
Ingo Weinhold
bbe9c7b15e Rewrote user_debug_thread_deleted():
* It was broken since the support for debugger handovers. Using
  debugger_write() couldn't work, since the thread didn't belong to the
  debugged team anymore (but to the kernel) and thus getting the debug info
  for team would always fail. This makes B_DEBUGGER_MESSAGE_THREAD_DELETED
  notifications work again.
* Allow the thread to block. Locking/writing to the port was non-blocking
  before, but there shouldn't be a problem, if the thread has to wait.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 01:02:33 +00:00
Ingo Weinhold
995aa3f06a broadcast_debugged_thread_message(): Only send the message to threads that are
stopped. Besides that the message won't be interesting to the other threads
anyway, we also risk filling the port and blocking the nub thread.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 00:28:36 +00:00
Ingo Weinhold
e4b912a7f4 Fixed comments and removed superfluous code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 00:17:37 +00:00
Ingo Weinhold
ac8b67130a * Added bits and pieces to the model classes (Team, Thread, Image).
* Added beginnings of the team window. Currently only showing the thread list
  (not updated yet).
* Added application startup code and argument parsing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 21:47:49 +00:00
Ingo Weinhold
576813ea37 Added Clear()/MakeEmpty() methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 21:41:59 +00:00
Axel Dörfler
83a9be236a * Implemented switching to the fallback video mode when pressing
Command+Control+Escape.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 21:22:10 +00:00
Stephan Aßmus
041b97a8b8 * Updated header indentation style and small cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 14:02:18 +00:00
Stephan Aßmus
5505e1909c * Apparently the "free_identify_partition_cookie()" function pointer should
not be NULL. If the intention is to allow this, then there is a bug somewhere
  else. Fixes booting on Macs, thanks to Zenja for testing this!
* Fixed what I believe to be an off-by-one error in BlockCount(). This also
  makes it symetrical with SetBlockCount().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 10:38:25 +00:00
Ingo Weinhold
008dd42650 Initial skeletons of the model (Team, Thread, Image) and the controller
(TeamDebugger) for debugging a team.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-16 00:25:36 +00:00
Philippe Houdoin
87c085991f Ooops, sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 23:12:16 +00:00
Philippe Houdoin
f06173c765 A tiny contribution to an Haiku Debugger rebirth: a Running Teams window designed similar to old' bdb one.
The skeleton 'hdb' application does nothing usefull beside, as I was trying to get fluent in team_debugger 
messages.

That's pretty much all what I came with during a pathetic attempt to secure some free time to work on 
a (indeed) most wanted native graphical debugger for Haiku. Building libdwarf was pending when I've realized
I wont have time ever. 

Ingo, I hope you don't mind. Fee free to do whatever you want with it, remove included.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 23:11:19 +00:00
Ingo Weinhold
774e234b75 Typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 21:50:50 +00:00
Ingo Weinhold
9e8ec48b30 Moved dwarf related code into dwarf/ subdirectory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 21:50:04 +00:00
Ingo Weinhold
0523bcd60c Obsolete file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 21:49:42 +00:00
Rudolf Cornelissen
ba18d798b9 obviously a card is always dualhead when it has two dacs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 18:35:40 +00:00
Rudolf Cornelissen
4bef539ea7 added pixelPLLs programming settings dump to driver logfile before overwriting it with new calculated settings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 18:29:46 +00:00
Stephan Aßmus
914fb50397 * Added a couple TODOs after reading a bit in the source.
* Introduced a lock in GetDefaultDevice() and ReleaseDevice() as a quick
  solution to the race condition in those functions. It could also use
  proper atomic ref counting. Untested.
* Automatic white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 15:15:32 +00:00
Axel Dörfler
fa00207c50 * Made the internal file systems correctly handle the timespec struct stat
times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 14:03:24 +00:00
Axel Dörfler
348ad702b6 * Fixed typos, this also closes ticket #4026.
* Fixed many coding style issues.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 10:51:29 +00:00
Axel Dörfler
e494494122 * Cleanup of how the time is converted between bfs_inode and the outside world:
there is now a couple of conversion functions, and I changed the type from
  bigtime_t to int64, as it's not what a bigtime_t would usually contain, but
  some shift magic in order to make duplicate index entries less likely.
* We now correctly fill in the timespec in struct stat as good as possible; the
  12 of the 16 possible bits are used for the nano second value. The lower 8
  bits are used to avoid the duplicate index entries. Only if the nano second
  time is 0, the lower 12 bits are used to achieve that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 09:49:12 +00:00
Ingo Weinhold
d49c767c5e * More work on the type debug info entry classes.
* New base classes for other entries handling common attributes.
* Annotated all classes with their missing attributes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-15 00:42:03 +00:00
Oliver Ruiz Dorantes
3ae24dffb1 - Cancelling pending transfers at close hook while it is still plugged preventing any resubmittion, this is related ticket 2353
- Free device in correct hook

This allows closing and reopening the bluetooth_server keeping bluetooth functionality



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 19:51:29 +00:00
Ingo Weinhold
c2e9f2a697 * Support for DW_AT_byte_size in DIECompoundType.
* Fixed several instances of attributes with dynamic values not being handled
  correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 17:16:08 +00:00
Ingo Weinhold
f5334fd1a3 Support for DW_AT_{accessibility,declaration,abstract_origin} attributes for
types.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 14:18:55 +00:00
Ingo Weinhold
9579e97f08 Some default value doesn't harm.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 14:17:37 +00:00
Ingo Weinhold
676040f030 Support DW_AT_decl_{file,line,column} attributes for types.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 14:02:50 +00:00
Ingo Weinhold
1b83621bf1 Slipped in by accident.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 13:11:42 +00:00
Ingo Weinhold
44101b1f99 The very beginnings of a debugger. Currently consisting only of the beginnings
of a DWARF 3 reader. It can read the .debug_info section and create objects for
the entries, but most attributes are ignored yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 12:53:29 +00:00
Stephan Aßmus
c43e377cff Increase the file handle limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 12:16:18 +00:00
Ingo Weinhold
568ade58d0 User debugger support:
* Generalized address checks. The debugger can now also read the commpage.
* Added new syscall _kern_get_thread_cpu_state() to get the CPU state of a
  not running thread. Introduced arch_get_thread_debug_cpu_state() for that
  purpose, which is only implemented for x86 ATM (uses the new
  i386_get_thread_user_iframe()).
* Don't allow a debugger to change a thread's "esp" anymore. That's the esp
  register in the kernel. "user_esp" can still be changed.
* Generally set RF (resume flag) in eflags in interrupt handlers, not only
  after a instruction breakpoint debug exception. This should prevent
  breakpoints from being triggered more than once (e.g. when the breakpoint is
  on an instruction that can cause a page fault). I still saw those with bdb
  in VMware, but that might be a VMware bug.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 12:14:06 +00:00
Ingo Weinhold
87df8902ac Don't use private BeOS syscalls.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 11:55:24 +00:00
Ingo Weinhold
58e784dfe6 Don't build compatibility.c for non-gcc2 anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 11:10:36 +00:00
Stephan Aßmus
f76e944e24 * Fixed problems when installing onto non-empty target volumes. The
'system' folder will be a clean copy of the source volume. Other
  folders will be merged (as before), but in case a folder is in the
  way of a link or file from the source volume, it will now be purged.
* Clarified the alert for non-empty target volumes, so it is very clear
  what happens. (Maybe there ought to the be option to only copy the system
  folder, though.)
* Fixed a problem with copying attributes in certain cases.
* Fixed the main GUI not resetting state properly after encountering an
  error during the copy process.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 11:07:52 +00:00
Ingo Weinhold
6ad4a777b6 Also set user_thread to NULL. It shouldn't make a difference, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 10:58:54 +00:00
Ingo Weinhold
6668455281 * Use public functionality instead of private BeOS syscalls.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 10:57:09 +00:00
Rene Gollent
c8602bcd11 The Media preflet was using a mix of old and layout style primitives to set itself up. As a consequence resizing basically didn't work correctly at all. Fixes ticket #3427.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 00:37:07 +00:00
Oliver Ruiz Dorantes
a1163de83e - Long events were locking the bluetooth server, as events can be more than 256 counting with the header.
- Add debug more information in H2 driver and Command Status event
- Change name of port for posting events(former was too long)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 19:17:10 +00:00
Stephan Aßmus
dc3d592369 When the media server is not running, display an alert and offer to start it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 17:06:58 +00:00
Michael Lotz
cfc8e38ece Implement most of the logic for write support in the GPT partitioning system.
Actual writing is not implemented though and some key functions aren't either.
Completely untested so far.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31032 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 15:51:19 +00:00
Stephan Aßmus
91c668a3d3 Added icon for PoorMan by zuMi. Thanks a lot and sorry for the delay!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 13:46:59 +00:00
Michael Lotz
45041904b4 Do not notify about auto-read messages. For example when setting spam to be
marked as read automatically I don't really want to get the notification alert.
This has been laying around on my drive for a long time now...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 13:00:48 +00:00
Michael Lotz
f835a75f31 Make two runs of MTRR setting when setting memory ranges to write-back. At the
first run only set up uncacheable MTRRs and in the second run set the write-back
ones up. If this order is not followed, we could set too large ranges to
cacheable first and then limit it back to uncacheable later. On systems with
enough physical memory this would lead to a temporary situation in which areas
become cacheable that must not be, resulting in system hangs or other unexpected
behaviour. Fixes last part of #4018.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 11:40:05 +00:00
Michael Lotz
96b24aef3f When clearing the MTRRs also set the default type to uncacheable. Otherwise on
systems where the default is set to a cachable type and MTRRs are used to define
the uncacheable areas, everything would become cacheable after clearing them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 11:35:57 +00:00
Jérôme Duval
581708b997 * fix the build by moving a typedef to public scope, and avoid returning a value in the destructor
* some clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 10:42:11 +00:00
Michael Lotz
bcc2ed0722 Fix the length calculated in generic_get_mtrr(). The +1 would usually be added
to the mask and then shifted, but as we don't do the shifting at all, we need
to add a page size instead of just 1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 02:35:19 +00:00
Michael Lotz
62232fd053 * Add more details to debug output.
* Change the TRACE macro to use varargs and add a prefix for easier grepping.
* Some line length cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31023 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 02:32:25 +00:00
Michael Lotz
740f46ad41 Update to use UsePrivateKernelHeaders so things like safemode.h can be properly
included.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31022 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 00:08:04 +00:00
François Revol
1fcdc25661 Fix build due to stricter type checking in C++ than C.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 22:02:21 +00:00
Jérôme Duval
27e6c57b6a added some PCI capabilities, wireless class values
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 21:16:04 +00:00
Michael Lotz
e10fbc44fb Not really sure why the inquiry command was special cased on ATAPI, but it
prevents tools that try to read other inquiry pages (like cdrecord) from getting
the required infos. This way the inquiry command is sent to the ATAPI device,
which seems to work fine (at least for the drive I have here).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 20:41:07 +00:00
Jérôme Duval
d0cb410d51 updated mii, msk to freebsd current
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 18:47:22 +00:00
Oliver Ruiz Dorantes
c6083519e7 Make a bit more elegant the processing of bluetooth events
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 18:14:51 +00:00
Michael Lotz
1d4c4d3a5b * Call PostReset() at the end of ResetPort() as it's always used in that way.
* Reset the port directly after executing a command failed instead of letting
  the next call do the reset first. This is arbitrary but looks cleaner to me.
* Provide a way to check if a given sata_request is a SCSI_OP_TEST_UNIT_READY
  over ATAPI and use this info to calm down all error output. This avoids
  spamming the syslog with error output on each media status poll when no disk
  is present in a ATAPI device.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 16:31:14 +00:00
Michael Lotz
46d4d11ff6 Need to stop the roster before deleting it. Should fix bug #4017.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 15:19:43 +00:00
Axel Dörfler
4ab3fa3b5a * Added real_time_clock(), and real_time_clock_usecs().
* Added support for timespec stat times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 09:31:25 +00:00
Axel Dörfler
0d85a0853c * Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 09:09:20 +00:00
Axel Dörfler
874f23496b * Returning random stat data isn't really nice.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-11 21:47:19 +00:00
Axel Dörfler
0714ea070a * Added "mv" command (BFS only, cannot access the host yet).
* Fixed warning in print_flag().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-11 18:44:16 +00:00
Axel Dörfler
f8daaadc80 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-11 08:48:40 +00:00
Axel Dörfler
09173f8089 * Applied a patch by Lukasz that already collected dust on my HD - sorry
Lukasz!
* It makes split_buffer() more efficient by avoiding making a copy of the
  original buffer.
* Minor cleanup, and coding style changes by myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-11 08:30:40 +00:00
Rene Gollent
e47b453ffd Be a bit more defensive here just in case the wav header has invalid data.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-10 14:47:57 +00:00
Rene Gollent
6b9846f69d Fix gcc4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-10 12:51:17 +00:00
David McPaul
16a89fee58 Read Extra Data needed by MSADPCM and others
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-10 02:53:26 +00:00
David McPaul
cbec1ef4af Ensure extra data is passed to decoder
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-10 02:49:45 +00:00
Jérôme Duval
3db68fb0bb rmattr now handles attributes on symlinks and directories
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-09 21:02:21 +00:00
Axel Dörfler
50977465d0 * This should recreate 0 byte attributes, and therefore fix bug #4015.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-09 20:25:20 +00:00
imker
fd070b419d Looks like ethernet_set_promiscuous() call should use ETHER_SETPROMISC ioctl instead of ETHER_GETADDR one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-09 18:18:54 +00:00
Axel Dörfler
2f3d29cec7 * The attribute directory of the root directory was ignored. This could lead to
data corruption after a checkfs run. Fixes bug #3963.
* Added some more debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-08 13:06:37 +00:00
Axel Dörfler
188f391487 * Fixed missing B_FS_IS_READONLY flag in fs_rfsstat(). This fixes bug #4009.
* Fixed many occurences of incorrect operator order, ie. "!flags & FLAG" does
  not what you might think it does.
* Added TODOs to functionally questionable code. I really don't think this file
  system should actually be used read-write. Deleting files seems to be
  completely broken.
* Fixed mixup of B_MOUNT_READ_ONLY vs. B_FS_IS_READONLY in nspace::flags.
* Fixed many, many style issues, that file really was a mess.
* Honoured 80 characters per line limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-08 08:53:53 +00:00
Ryan Leavengood
59cd64ac3c Overlapping the top of the scrollbar button no longer makes sense with a tabbed
Terminal. It just makes the button look improperly clipped when tabs are being
used.

I am not totally happy in how this looks though, and if someone has other ideas
feel free to fix it up (maybe a line under the tabs when they are showing?)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-08 05:46:16 +00:00
Stephan Aßmus
cf8af72233 _InitReader(): source can only be NULL if we tried to allocate it ourself, so
we can set fErr to B_NO_MEMORY in that case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:47:16 +00:00
Stephan Aßmus
60a2c42f76 Check the params in SetTo().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:45:04 +00:00
Stephan Aßmus
b7cf537e50 Added BMediaFile::_UnInit() and implemented the two SetTo() methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:43:26 +00:00
Stephan Aßmus
b5ec3e5669 * Coding style clean-up.
* Use std::nothrow and check allocations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:35:14 +00:00
Stephan Aßmus
bb56a763a6 Resolved TODOs in PluginManager about leaking plugins when they are no longer
needed. I've added MediaPlugin* fields to Reader and Decoder plugin classes
which are set when the PluginManager hands out new instances. This way the
manager knows what plugin created the Decoder or Reader instance in the
Destroy*() methods and can decrease the reference count accordingly. Also added
some FBC stuffing to Decoder and Reader. All media plugins need to be recompiled,
in case anyone has some outside the Haiku tree.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 18:11:05 +00:00
Michael Lotz
acf58ffdab Cleanup. Line length, white space.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 14:54:11 +00:00
Axel Dörfler
e52400cf24 * Fixed a race condition in the former _Detach*() functions: since atomic_get()
was used, two different threads could decide to share the same mutable string.
* Renamed some functions to make clearer what they do, ie. _Detach() is now
  called _MakeWritable().
* Cleaned up some questionable semantics, like the const char* parameter in
  _DetachWith() - you can now choose to copy the original string or not with
  a boolean. This also makes sure that the string is actually copied when it
  has to, which wasn't the case before (but that was no problem with the way
  that function was used).
* Made the header compliant with our style guide.
* Further cleanup.
* All BString related unit tests are passed, so I guess I didn't break too
  much :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-06 11:23:17 +00:00
Stephan Aßmus
a55f3fb022 Patch by Joe Prostko: Add linking to libstdc++ in some places, which is
necessary when compiling the code for example with -O1 or with the upcomming
GCC 4.4. Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-06 10:35:14 +00:00
Ryan Leavengood
be7bee59b6 Added Eiffel, Rexx and Ruby file extensions to source code file type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 23:21:53 +00:00
Philippe Saint-Pierre
ed3e75317e Load the bitmaps from resources rather than from a byte array in a
header. Fixing a TODO in MouseView.cpp

This patch was in ticket #3754. (Thanks to Axel for the reminder and 
thanks to Brecht for your help extracting the images from the header!)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 21:21:06 +00:00
Axel Dörfler
477a4ca70e * vfs_boot.cpp now also exports gReadOnlyBootDevice which is true when the
boot device is actually read-only (even if it's using the write overlay).
* Do not create a swap file on a read-only device - this would really be a
  stupid use of the write overlay (just saw this happening on an older
  machine).
* Made swap_file_{add|delete}() take a const char* path - there was no reason
  this was writable, and this also avoids casting away the const when adding
  the default swap file.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 15:52:58 +00:00
Axel Dörfler
bfd4c59b63 * Added DPMS support to the VESA driver, in case the hardware/BIOS supports it.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 13:03:05 +00:00
Rene Gollent
08acbdd994 Fix gcc4 build. Closes ticket #3996.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 12:33:22 +00:00
Axel Dörfler
4a8250546b * Unmounting a volume now actually works, this fixes bug #3671.
* Added -u as an alias for -unmount. Added -readonly as an alias for -ro.
* Made the volume/fs column width depending on the terminal size.
* Now lists the volumes (-l) when invoked without any arguments instead of
  showing the help text.
* Improved output of not mounted volumes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 09:49:43 +00:00
Rudolf Cornelissen
bc84e16481 comments update only: newly discovered PLL info/trouble. needs to be investigated more.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 09:10:40 +00:00
Axel Dörfler
7e7aeaeba4 * Fixed wrong partition name in mkfs, closing ticket #3954.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 09:06:11 +00:00
Stephan Aßmus
483f3c84d9 Added lightbulb icon made by zuMi (idea alerts). Great work, thanks a lot!
Fixes alert part of ticket #1429.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 08:43:41 +00:00
Stephan Aßmus
03807931d8 Patch by Geert Hendrickx:
* Fixed remapping the Control keys.
* Adjusted the caps-lock shifted keys, in case someone decides to exchange
  the left backspace key for the caps-lock key again.

Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 08:22:09 +00:00
Axel Dörfler
2c604c0df5 * CircularBuffer is now save to use even if the buffer allocation failed. This
fixes bug #3985.
* This happened as ViewHistory::Update() can obviously be called before the
  view is really layouted. Therefore it now restricts the view size to 16384.
* Since the Update() happens in Draw(), it looks like this is actually a problem
  of our layout engine (as the size is computed via BView::Frame()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 08:20:43 +00:00
Axel Dörfler
c0fba701e1 * Added dprintf_no_syslog() to our kernel emulation layer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 08:14:31 +00:00
Axel Dörfler
1f40b5d26c * Removed Menu preferences. This closes ticket #3976.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 07:47:08 +00:00
Axel Dörfler
d5f3f51106 * Fixed wrong localhost. This fixes bug #3990.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 07:37:24 +00:00
Rene Gollent
80829ec813 Imported Gerald Zajac's ATI Mach64 / Rage driver and removed the old GPL-only mach64 driver that wasn't even part of the image anyways. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 02:50:25 +00:00
Axel Dörfler
cb8948154c * Only call Removed() on the device if the device actually got removed, not if
only one of its partitions went away. This should fix #3983.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 21:06:06 +00:00
Axel Dörfler
9ca4077700 * Fixed a bug that let _InvalidateAfter() access already freed memory, and would
also mess up the file map, causing all sorts of file corruption.
* This fixes bug #3991 (and eventually some others).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 12:29:15 +00:00
Axel Dörfler
2b665ac362 * Simplified computation as suggested by Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 12:27:09 +00:00
Axel Dörfler
9b9bbca910 * Fixed Map::GetFileMap(), added some more tests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 12:11:37 +00:00
Axel Dörfler
503e56854f * Started a file_map test app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 10:50:09 +00:00
Axel Dörfler
584ba8989e * Fixed debug build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 09:57:31 +00:00
Ingo Weinhold
7927ebb672 Moved the appending of '*'/'&' for pointer/reference parameters to the gcc 2
demangler, where it belongs. The gcc 4 stack traces look correct now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 02:00:45 +00:00
Ingo Weinhold
15394881a8 * Implemented demangling support for the current gcc ABI. Looks good so far
save for the additional '&'/'*' print_demangled_call() is printing for
  reference/pointer arguments.
* Moved the new demangler and the gcc 2 demangler into the same module
  always supporting both (the right one is chosen). In mixed gcc 2/gcc 4
  environments we obviously need both of them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-04 01:47:05 +00:00
Axel Dörfler
cf2a26ea96 * Don't overwrite the history buffer when you issue the same command more than
once.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 21:05:29 +00:00
Jérôme Duval
ce684bcc33 Adding lrintf declarations conflicts on avcodec when building gcc4. Noticed by Michael Weirauch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 20:36:29 +00:00
Rudolf Cornelissen
7843b5bfa3 re-enabled EDID native modeline grabbing with I2C bus 2 enabled. Now EDID is correctly fetched on all my cards, including G72 id0x1d1 and NV43 id0x141. info is stored in shared_info, not actually used yet though. (wip)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 19:20:04 +00:00
Ingo Weinhold
813d6a742f print_demangled_call(): Use a heap allocated buffer. This allows us to be more
generous with the size.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 13:36:35 +00:00
Ingo Weinhold
360d4974b9 Replaced the temporary storage used in the kernel debug command parser. We now
have a simple dedicated heap for the kernel debugger with stacked allocation
pools (deleting a pool frees all memory allocated in it). The heap should
eventually be used for all commands that need temporary storage too large for
the stack instead of each using its own static buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 12:28:49 +00:00
Axel Dörfler
5734ece852 * Improved output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 12:16:25 +00:00
Axel Dörfler
e07e55403c * Removed debug output of the old pad fields that no longer exist.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-03 12:14:16 +00:00
Rudolf Cornelissen
c1db4db3cc modified I2C code to read the third bus on cards that can support it. Dumping EDID scanning results in logfile only for now (testing..) Bumped version to 0.92.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-02 20:37:59 +00:00
Jérôme Duval
59d67522ea added lrint and llrint functions to math.h
added generic implementations for ppc and m68k


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-02 20:24:18 +00:00
Gerasim Troeglazov
30bc84e971 Update NTFS-3g Library to stable 2009.4.4 version. Clean up code. Now write support enabled by default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-02 12:21:10 +00:00
David McPaul
4cf2271b57 Bring matroska library up to latest version. Allows V2 matroska file playback
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-02 09:34:16 +00:00
David McPaul
938fd5a7e0 Update to v1.61 of MatroskaParser library
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-02 09:15:14 +00:00
Axel Dörfler
656341901e * Reintroduced the find_own_image() function, as I think this is the cleaner
approach.
* Made get_next_line() static as it should have been in the first place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-01 20:47:41 +00:00
Axel Dörfler
e9c7d49aa0 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-01 20:44:59 +00:00
Rudolf Cornelissen
dd67a9b2d4 added enabling I2C buses for NV40 arch cards. hopefully this makes the buses work on GF6100 (noted in bug #2780) and maybe others. added a few registerdefines (wip).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-01 20:06:21 +00:00
Ingo Weinhold
fa773c0ae5 vnode_path_to_vnode(): Don't propagate the traverseLeafLink flag, if we've
decided to recursively resolve a symlink. We only have to do the resolution
when the flag is true anyway or the symlink is not the last component of
our path, in which case we have to resolve it anyway. Fixes #3986.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-01 11:12:12 +00:00
Rene Gollent
6a004bd33c When we dynamically create a mount point directory, add a special marker subdirectory in it so the disk system knows the directory was not created by the user. When unmounting, look for the marker and remove the mountpoint directory if found. This fixes the issue where mount / unmount / mounting a volume via Tracker would result in extra empty dirs in the rootfs. Ideally I'd rather solve this by being able to tag the mount points with attributes, but this isn't currently possible since the attribute overlay is a module and thus not available when mounting the rootfs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-31 05:55:54 +00:00
Oliver Tappe
f2e0ac2cd7 * Instead of moving bounds-height during paging, we now determine the exact
next position of the caret and only scroll the distance between the current
  and the next position. This fixes #3981
* When paging upwards, we need to compensate for the fact that the caret 
  position is always considered at the top of the line, as otherwise a
  page-up would pass one more line than a page-down


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 21:07:36 +00:00
Michael Lotz
93aba444aa Removed just a bit too much in r30927.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 20:10:12 +00:00
Michael Lotz
c89b0ea4c2 We need to update the name and parent directory when renaming/moving.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 19:25:43 +00:00
Michael Lotz
331f147bae * When removing entries properly call remove_vnode().
* Move notifications around so they are sent at the right time.
* Use notify_entry_moved() instead of generating a removal and creation
  notification.
* Allow replacing entries.
* Added a TODO regarding non-empty directories.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 18:31:33 +00:00
Oliver Tappe
4b6aea9b74 Fixed bug in BTextView reported by Matt:
* when selecting via mouse, the caret position now follows the direction of
  the selection - which is less surprising than not moving the caret at all

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 17:27:03 +00:00
Michael Lotz
f06f5d708c Make reading the write_overlay more efficient. Instead of always reading the
original file and then overwriting it with what we have in memory, just linearly
fill the buffer, closing gaps between our buffers with original file content as
needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 17:21:10 +00:00
Stephan Aßmus
bc72ab054b I messed up the patch from ticket #3971, because I thought I could simplify it.
Sorry about that! This is now like in the original patch and fixes the ticket
for real.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 17:04:44 +00:00
Michael Lotz
5ab2eaabaa Only use read_pages() when we need to. Otherwise we bypass the cache of the
upper layer, degrading performance qutie a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 14:39:14 +00:00
Jérôme Duval
1f717fef4d applied patch from mmadia: fix extra ( )
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 14:32:01 +00:00
Jérôme Duval
8b20dbc8a7 addattr can now add attributes to directories and symlinks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 14:12:00 +00:00
Ingo Weinhold
9738f996e3 * Removed unused find_own_image().
* sv_rewind(): Init the cookie to 0 before using it for get_next_image_info()
  iteration. This could cause the function not to find the libnetwork path and
  thus fail to open the "services" attribute. The getserv*() functions would
  always fail and the net server wouldn't be able to listen on the telnet and
  ftp ports.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 12:33:11 +00:00
Jérôme Duval
e81f1b80e9 copy attributes on symlinks (only testable with -P, --no-dereference), fixed bug #3539
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 12:20:11 +00:00
Jérôme Duval
a47e7e30e4 * merged Frame and Hidden properties (set and get) (bug #3493).
* changed Hidden set property to not check the current hidden state, as it's not exactly related.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 11:37:25 +00:00
Jérôme Duval
0aab2caf8e fixed usage of char* when const char* is expected, reported by ziomatto
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 11:10:23 +00:00
Stephan Aßmus
97566384f7 Applied patch by Stef Busking: Adjust the current keyboard focus field along
with the mouse, so that switching between using the keyboard and mouse is more
fluent. Fixes ticket #3971.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 10:39:17 +00:00
Ingo Weinhold
eb0262fc4c * Reworked vm_soft_fault() and friends:
- While walking down the cache chain, we keep all upper caches locked.
  - When we have to unlock -- when waiting for a busy page or reading a page in
    -- we unlock completely, including the address space, and restart
    vm_soft_fault().
  - Folded fault_get_page() and fault_find_page() into one.
  This simplifies and improves things considerably:
  - We no longer need dummy pages.
  - We no longer need vm_area::no_cache_change.
  - #2710 is fixed, since we no longer hold the address space lock while
    waiting.
* vm_soft_fault(): When we have found our page, we first check whether a page
  is already mapped at the address. If it is already our page, we just change
  its protection. If not, we unmap it first. Fixes race conditions when multiple
  threads fault at the same address at the same time.
* fault_get_page(): When copying a read-only page from a lower cache, no longer
  mark it active, since at least for the fault area it is shadowed from then on.
* vm_set_area_protection(): Fixed potential overflow for in the
  vm_translation_map::protect() call.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-29 12:55:25 +00:00
Michael Lotz
57a5e69604 * Implement read/write_pages using Read()/Write(), io will follow later.
* Create a file cache for created overlay nodes. It is unused and disabled, but
  causes a vnode cache to be created. This is required for mapping a file, which
  in turn is required for executables to be loaded. With that copied or newly
  created executables should work on top of write_overlay. Will think about and
  implement a more direct way of getting that cache later today.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-29 02:52:11 +00:00
Ingo Weinhold
d9ea25c51d Fixed error handling in module initialization.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-29 01:04:17 +00:00
Michael Lotz
5740b42f36 Write can be called without cookie (in the CreateSymlink() case for example).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 21:58:42 +00:00
Axel Dörfler
41b1980691 * Added support for the io() hook. Not yet tested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 21:37:39 +00:00
Axel Dörfler
f0c050f60e * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 21:32:53 +00:00
Michael Lotz
0807998b5d * Implement O_APPEND.
* Also make set_flags available for setting it. O_NONBLOCK is ignored as in BFS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 21:19:13 +00:00
Jérôme Duval
591bc3f2d9 * various fixes identified by gcc4, provided by Joe Prostko
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 20:36:22 +00:00
Rudolf Cornelissen
1f58723702 comments update only. There's now enough info to implement actual use of DDC/EDID (I hope). It will be mixed with the old methods, since on some cards DDC fails for some connectors, and laptops don't use DDC for their internal panels at all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 20:33:02 +00:00
Jérôme Duval
7abb735ac6 * Includes termios.h in sys/ioctl.h, for TIOCGWINSZ.
* added watch command, which executes a program periodically, showing output full screen. 
* added watch to the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 20:16:35 +00:00
Michael Lotz
5f447d9b4c Apply r30890, adding a missing put_vnode() on error, to write_overlay as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 17:31:18 +00:00
Michael Lotz
940e8add93 Apply r30895 and r30897 to the attribute_overlay as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 17:26:13 +00:00
Michael Lotz
3d94685b25 Move the B_UNSUPPORTED return into the macro. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 16:18:11 +00:00
Michael Lotz
f54023cf37 Propagate error codes in FIONREAD. Fixes bug #3973.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 16:03:50 +00:00
Michael Lotz
607254f510 We don't want to use the OVERLAY_CALL macro for can_page() as it returns a bool
and not a status_t. In case of virtual files it would have wrongly returned
B_UNSUPPORTED, resulting in true instead of false.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 15:32:42 +00:00
Philippe Saint-Pierre
de81e90c0b Replaces NodeMonitor by PathMonitor in the InfoWindow to update the calculated size of the directory when a change happen.
This implement the suggestion in ticket #2868.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 14:02:41 +00:00
Michael Lotz
2cdc24e4ad Fix two instances of handing wrong vnodes to the next layer in attribute_overlay.
The target vnode in link and the toDir vnode in rename were passed directly,
meaning that an attribute_overlay vnode was handed to the next layer causing
crashes when moving/renaming a file on ISO-only CDs for example. Fixes #3885.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 12:34:03 +00:00
Michael Lotz
588b9abc12 Fix leaking the old entry name when renaming actually succeeds.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 02:39:25 +00:00
Michael Lotz
2fc5fcd1ad Add missing put_vnode() in error case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 02:16:07 +00:00
Michael Lotz
4251f05625 When writing an attribute store file the parent directory might have been
invalidated since the creation of the object. If this is the case we have to
look it up again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 02:15:14 +00:00
Michael Lotz
0635976606 Invalidate our cached inode numbers when removing the attribute file. Basically
we want to ensure that we re-enumerate our environment when eventually writing
a new one as it has most probably changed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 02:05:23 +00:00
Michael Lotz
dfada88840 Add functionality for removing a attribute file. In case a file is (re-)moved
we will later remove the attribute backing file using this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 01:55:43 +00:00
Michael Lotz
56b2febaad Add actual support for relocated directories. In case we hit a placeholder file
pointing to a relocated directory, we now re-initialize the node we are
initializing with the first entry of the pointed at directory. This ought to be
the "." entry containing the proper flags, start block number and data length.
As per the specs we do only keep the file id or alternate name of the
placeholder and take everything else from the relocated directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-28 00:39:33 +00:00
Michael Lotz
f593b93a09 Fix GCC4 build of the HVIFTranslator.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 22:57:31 +00:00
Jérôme Duval
e7c8829c5d strchr(const char*, ...) returns const char* in C++, identified by gcc 4.4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 20:07:43 +00:00
Rudolf Cornelissen
f595427d00 fixed comment typos. No actual change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 18:57:01 +00:00
Rudolf Cornelissen
21bade017a added more EDID stuff. Now extracting needed monitor specs and placing them in shared_info. More dumping to logfile added. The EDID info is not yet actually used: more testing is needed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 18:46:07 +00:00
Ingo Weinhold
c533f813a2 Normalized the FATAL messages. The image path is always printed, now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 14:32:11 +00:00
Ingo Weinhold
6a79745b4c Disabled the stack traces on unhandled userland page faults. As was already
known those can cause a deadlock. Besides, when the debug server is running,
it prints an even nicer stack trace. Not removing the code yet to make things
easier for architectures on which we don't have a userland yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 13:57:07 +00:00
Michael Lotz
43276e5bd1 If we encounter an unsupported entry (like a relocated directory) we now just
skip it instead of returning the error and therefore aborting the directory
enumeration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 01:30:29 +00:00
Ingo Weinhold
de49044796 * Use the new Add{Files,Symlink}ToHaikuHybridImage rules in HaikuImage and
OptionalPackages. This makes the content definition part in
  AlternativeGCCArchive superfluous.
* Moved the cc and c++ wrapper scripts from src/bin to data/bin.
* Added build variable HAIKU_ADD_OPTIONAL_PACKAGES to add optional packages
  -- the list can be separated by slashes to allow easier passing through
  the shell.
* When invoking the sub-jam that builds the alternative GCC archive, we force
  it to ignore the UserBuildConfigs and we enable the optional packages
  enabled in the main jam.
* Reorganized /boot/develop:
  - There's now an "abi" subdirectory containing a <arch>/<gcc>/ subdirectory
    for each installed ABI-incompatible gcc version and a "current" symlink
    pointed to the currently selected one.
  - All ABI-dependent directories under /boot/develop/ (lib/x86, headers/cpp,
    tools/gnupro) symlink into /boot/develop/abi/current.
  - Changed BELIBRARIES to contain
    /boot/develop/abi/current/library-paths/common instead of /boot/common/lib.
    The former is a symlink to either /boot/common/lib or
    /boot/common/lib/<gccVersion>. There's also a respective "home" symlink.
  - Repackaged the optional binutils+gcc 2/4 packages accordingly. Also fixed
    the obsolete /boot/beos/system/lib/libstdc++.so symlink in the gcc 4
    package.
  - The new structure allows to switch between compilers by changing the
    /boot/develop/abi/current symlink. Added script setgcc to do that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 01:12:34 +00:00
Jérôme Duval
5348460789 Fixed #1896 by using directly pregenerated bc.c and scan.c instead of bc.y and scan.l
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 21:38:30 +00:00
Oliver Tappe
b788c037f3 * Fixed incorrect use of IN_MULTICAST in ipv4: the macro must be invoked
on an address in host-byte-order, not network-byte-order.
  Basically this caused failure for all IP-traffic to any IP-address
  where the last byte & 0xF0 == 0xe0.
Now we can surf www.pcre.org again ;-)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 21:34:42 +00:00
Jérôme Duval
7ba59d8729 don't try to allocate an empty BBitmap
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 20:38:10 +00:00
Rudolf Cornelissen
80b01907d9 modified GPU Ptimer programming which according to nouveau should fix LVDS panel programming in some cases. Bumped version to 0.91. If this update brings trouble, let me know... Sorry about the empty commit message before btw.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 18:46:00 +00:00
Rudolf Cornelissen
aeb4bf93d4 git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30867 a95241bf-73f2-0310-859d-f6bbb57e9c96 2009-05-26 18:34:05 +00:00
Oliver Tappe
2dc3fd4652 * fixed gcc4-build of DriverSettingsTest
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 15:23:06 +00:00
Oliver Tappe
f36c9e44ac * added a couple more test dates that contain timezones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 15:22:04 +00:00
Oliver Tappe
78176019e6 * squashed a TODO in parsedate() about missing timezones - now both textual
(3-letter) and numerical timezones (e.g. -0700) are supported
This means that the workaround in mail_util.cpp of the mail kit could be
removed, but since I do not know if that should still support other versions
of BeOS, I have chosen to leave it alone.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 15:11:05 +00:00
Ingo Weinhold
6f2961ffab Added awareness for running with a non-native ABI (hybrid build). In this case
we test for a respective subdirectory for any translators path added and use
that instead, if existing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 01:05:57 +00:00
Ingo Weinhold
c7d1aa192f Added system_info::abi field. It contains the system's ABI version, which
might be different from that of the caller (on hybrid builds).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 01:02:39 +00:00
Ingo Weinhold
d69c4f6aa9 Removed BeOS support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 00:14:16 +00:00
Ingo Weinhold
bd8ff8aa9f Yummy, more style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 00:01:48 +00:00
Ingo Weinhold
a9cfff5fc2 Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 23:51:16 +00:00
Ingo Weinhold
8c7bf264f5 The 'extern "C"' was missing for the C function replacement of the Version()
method. Rather reintroduced the method (private) instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 23:32:53 +00:00
Michael Lotz
c26b324e20 Should fix GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 21:26:54 +00:00
Oliver Tappe
33203f677e * added support for ctime to BFS by grabbing two of the pad-fields
* added TODO about a sanity check that should perhaps be dropped
I checked this change with both a haiku-BFS partition and one from R5

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 18:04:28 +00:00
Ingo Weinhold
42c9b01aa6 * {BEntry,BNode}::GetStat() were still passing the BeOS struct stat size to
the syscall. Anything beyond st_mtim was therefore not filled in. Fixes
  the incorrectly shown creation times in Tracker.
* The BStatable::GetStat() solution was not sufficient yet. We still have to
  provide the old GetStat() symbol for BNode and BEntry, since those could be
  used by old applications/libraries. We also still have to implement the old
  GetStat() slots in the derived classes, but don't need to implement it in
  the base class (was purely virtual before and is private now).
* The old BStatable::_OhSoStatable1() slot function was not implemented
  correctly. Calling the virtual function at the vtable slot obviously results
  in an infinite recursion. The correct implementation would make use of the
  Perform() method, but Be didn't provide one for BStatable, so we have to use
  the old GetStat() method. Fixed #3960.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 14:03:38 +00:00
Jérôme Duval
56d4690860 wakeup() means wake any waiting threads, so we use the relevant flags. this gives a reliable dv receive stream here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-24 23:15:04 +00:00
Michael Lotz
f2d4d6f676 Invalidate the elfHeader variable when the image struct is deleted on error, as
they share the same pointer. Should fix bug #3955.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-24 23:10:55 +00:00
Ingo Weinhold
d40c694ea5 * Reverted r30843.
* Don't call abmon_init() when HAVE_NL_LANGINFO is not defined. It would
  always fail.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-24 22:36:24 +00:00
Ingo Weinhold
48f1a5b4c9 Patch by Eric Petit: A read select() should not block when there's not data
available anymore and the remote end has been write-shut-down. Fixes #3536.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-24 22:13:12 +00:00