29784 Commits

Author SHA1 Message Date
Axel Dörfler
aa1f661460 * Quick fix for the broken GCC2 build. The guilty one might want to have another
look at this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31159 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31159
2009-06-21 17:04:32 +00:00
Ingo Weinhold
0bcacd22ab * Added classes to represent source code (SourceCode, Statement).
* Added x86 disassembler (via libudis86).
* Added Architecture::DisassembleCode() to disassemble a function to SourceCode.
* Added virtual DebugInfo::LoadSourceCode() to retrieve the source code for a
  given function. The implementation in DebuggerDebugInfo disassembles the
  function.
* Added source code info to StackFrame. Also added a listener mechanism to get
  notified on source code changes.
* Added job to load the source code for a stack frame.
* Added (very basic) source code view and wired everything so that when a stack
  frame is selected the source code (respectively disassembly) for the
  underlying function is retrieved and shown.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31158 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31158
2009-06-21 13:17:21 +00:00
Stephan Aßmus
b3601d823c * Update indentation style in TabView.h
* Added _MinTabeSize() to BTabView. It makes sure that the BTabView displays
  at least two tabs. In the future it should also add the room to display some
  buttons for cycling the currently displayed tabs left/right if there is more
  than can fit.
* In BTabView::Min/Max/PreferredSize(), use _MinTabSize() to compute the
  respective size.
* Improve Tab rendering code so there are no ugly overlaps at the right edge
  if the tabs falls directly on the view edge.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31157 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31157
2009-06-21 13:04:51 +00:00
Ingo Weinhold
a0a50d370e * Missing initialization of fStackTrace.
* Removed unnecessary TableRowInvoked().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31156 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31156
2009-06-21 13:03:08 +00:00
Stephan Aßmus
ea603b7af3 Small style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31155 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31155
2009-06-21 13:01:40 +00:00
Ingo Weinhold
cd69802317 Missed the libudis86 jamfile.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31154 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31154
2009-06-21 13:00:12 +00:00
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
hrev31153
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
hrev31152
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
hrev31151
2009-06-21 12:05:34 +00:00
Ingo Weinhold
7c40979456 * Create the symlinks for the alternative gcc in the correct subdirectory.
Fixes bug #4035.
* Create the libnetwork.so compatibility symlinks only for gcc 2.
* Install only the shared libstdc++ to /system/lib.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31150 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31150
2009-06-21 10:59:34 +00:00
Ingo Weinhold
e20c80b57f Added new optional parameter to AddSymlinkToHaikuHybridImage allowing to create
the symlink in a subdirectory for the alternative gcc.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31149 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31149
2009-06-21 10:57:01 +00:00
Joachim Seemer
f6fcf9b832 * Set html MIME type for apps-charactermap.hmtl.
* Added CharacterMap to applications.html contents.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31148 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31148
2009-06-21 07:11:22 +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
hrev31147
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
hrev31146
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
hrev31145
2009-06-20 18:43:38 +00:00
Joachim Seemer
d27c52da2b * The topnav bar wasn't high enough. Small change in Haiku-doc.css solved that.
* Corrected link in Fonts preferences.
* Added Mount menu item and changed Shutdown menu item in Deskbar.
  Updated screenshot.
* Updated Keymap documentation and screenshot (comments welcome, esp. for the
  keyboard commandline part at the end).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31144 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31144
2009-06-20 18:30:05 +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
hrev31143
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
hrev31142
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
hrev31141
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
hrev31140
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
hrev31139
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
hrev31138
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
hrev31137
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
hrev31136
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
hrev31135
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
hrev31134
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
hrev31133
2009-06-20 12:11:49 +00:00
Ingo Weinhold
dee5a4f49f Changed isHybridBuild variable from 0/1 to undefined/defined. Fixes formerly
incorrect check in the DevelopmentBase package. Thanks to Joseph Prostko for
the hint.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31132 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31132
2009-06-20 11:15:05 +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
hrev31131
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
hrev31130
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
hrev31129
2009-06-20 08:52:51 +00:00
Philippe Houdoin
da03e5cb10 Removed libnetwork.so aliases from Development officially supported libraries.
Only libGL.so aliases, libglut.so and libGLU.so, deserves to be there. 
Automatic space/tab cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31128 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31128
2009-06-20 08:44:54 +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
hrev31127
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
hrev31126
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
hrev31125
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
hrev31124
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
hrev31123
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
hrev31122
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
hrev31121
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
hrev31120
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
hrev31119
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
hrev31118
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
hrev31117
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
hrev31116
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
hrev31115
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
hrev31114
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
hrev31113
2009-06-19 08:23:11 +00:00
Philippe Houdoin
c9a4907c03 Typo cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31112 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31112
2009-06-19 02:06:30 +00:00
Philippe Houdoin
0854b2fa96 Fixed missing libs "aliases" symlinks in DevelopmentMin package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31111 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31111
2009-06-19 02:04:39 +00:00
Philippe Houdoin
b8340a294c libnetwork.so, libnetapi.so and libGL.so aliases were not symlinks but duplicates.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31110 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev31110
2009-06-19 01:31:51 +00:00