Commit Graph

35052 Commits

Author SHA1 Message Date
Michael Lotz
3d1f420b23 bonefish+mmlr:
* Add "allocation_infos" KDL command. Can be used to print the allocation info,
  including the stack trace, given an object cache, slab, allocation within a
  slab or allocation address. It can also optionally be filtered by team/thread.
* Fix the AllocationDetailPrinterCallback to not access a possibly invalid
  trace entry for printing a stack trace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 16:12:48 +00:00
Michael Lotz
81fea74394 bonefish+mmlr:
Add MemoryManager::DebugObjectCacheForAddress() to retrieve the ObjectCache for
a certain address from KDL.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 16:09:49 +00:00
Michael Lotz
9a79e531ef bonefish+mmlr:
* Introduce TracingMetaData::IsInBuffer() to validate that a certain memory
  range is within the valid tracing buffer limits.
* Use that when validating in tracing_is_entry_valid() before trying to access
  the entry, resolving a TODO.
* Validate the candidate time against the handed in time (if specified) as an
  additional check.
* Tiny unrelated text cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 16:02:07 +00:00
Adrien Destugues
279ca67d6e Missing from previous commit. The files for notifications are quite scattered all around...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 15:08:00 +00:00
Adrien Destugues
4ec6c3a042 Merge patch by plfiorini :
Some changes to the API for notifications.
	* Don't go through be_roster to send a notification, but use Notification->Send() instead.
	* Rename App to Group to make the purpose clearer

And some changes to the notification code itself:
	* Use the Notification class as the way to convey informations about a notification. Allows easier extension of this class
	* Code cleanup
	* Use of the layout kit for the notify window

Unfortunately, the latter part clashes quite a bit with the changes I already did to the notification window, so it's now quite broken. Working on that next, but I wanted to separate that work from the patch ...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 14:57:43 +00:00
Rene Gollent
9b15fe0a81 Further flesh out GUITeamUISettings to be able to save/restore. This should be
more or less complete now, or at least far enough along to start doing some
things with it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 14:01:24 +00:00
François Revol
9ea67ec09d Update comment; SCM URI schemes are handled by checkitout.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 10:44:15 +00:00
François Revol
f9ce367963 Add some URI schemes to the list of suggested new ones to support.
Added support for the useless about: URI scheme, which asks an app with the provided signature its about window, or launched AboutSystem.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 10:25:32 +00:00
François Revol
046dcae9c8 Make the TV app support the IANA-registered tv: URI scheme, so at least it launches when you "open tv:" in Terminal.
cf. http://tools.ietf.org/html/rfc2838
Yeah I know it's useless but so l33t.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 09:42:05 +00:00
Rene Gollent
7bf8fcfab4 Make rect data part of union as suggested by Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 09:19:24 +00:00
François Revol
f558ec135a Fix header and class name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 08:56:25 +00:00
John Scipione
6ac7032dc6 Update the style of the Haiku Book to resemble the User Guide.
If you have never seen this before you are in for a bit of a shock.
Update the Doxyfile to 1.7.3 (the version that gets auto-generated).

Update the book.dox front page with some nice introductory text.

Add new documentation for the following classes:
BCheckBox
BClipboard
BColorControl
BControl
BEntryList
BView (preliminary)

Remove redundant documentation from src/kits/storage/EntryList.cpp

Minor documentation update for the following classes:
BAlert
BApplication
BArchivable
BBox
BButton
BCatalog
BFindDirectory
BHandler
BUnarchiver
BString

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 08:36:02 +00:00
John Scipione
740ae7fef6 Return B_ERROR if a locking error occurs in while locking the BLocale object, return B_BAD_VALUE if an ICU error occurs or the passed in value is NULL. Update BLocale API documentation to reflect this and also add some more documentation fixes. Closes #7901 pending confirmation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 06:02:36 +00:00
John Scipione
08cd4bc208 Add 3 new Apple Aluminum keyboard layout files and update and rename the
existing 'Apple Aluminium' keyboard layout to 'Apple Aluminium Extended
International.' The 3 new layout files are US mini and extended version
as well as an international mini version. This completes #7964

International corresponds to keyboard layouts for all locales except the US
and Japan. I have Japanese Apple Aluminum keyboard layout files almost
ready but I first need to determine what the special kana and eisu keys
are mapped to.

The Apple Aluminum keyboard layout files are tucked away in an Apple Aluminum
subdirectory. The Keymap preference app has been modified to turn
subdirectories into submenus of the Layout menu.

HaikuImage has been modified to include each keyboard layout file in the 
image individually as recommended by Ingo.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 04:30:44 +00:00
John Scipione
001f379993 This commit fixes a bug described in ticket #7051 where Deskbar forgets expanded
items when you switch away from expando mode. It does this by keeping a list of
expanded item signatures in a fExpandedItems BList on the BarView class. I
can't use team_id because there can be more than one team per application.

If you have checked the 'Expand new applications' option in the Deskbar
preferences then the signatures of new applications will be added to the
fExpandedItems list expanding the item. If you open a new application while
not in expando mode then the app will be expanded upon returning to expando
mode.

Since 'Expand new applications' automatically adds any new item's signature
to the fExpandedItems list Tracker is expanded on startup since it is 'new'.
Also if Deskbar is restarted all applications will be considered 'new' so they
are expanded. This fixes ticket #4830

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 03:39:20 +00:00
Oliver Tappe
acbd89984d Add more tests for wchar/multibyte converter functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 00:10:54 +00:00
Michael Lotz
45cbd81436 Fix build with tracing disabled. Since capture_tracing_stack_trace() doesn't
return a stack trace when tracing is disabled we don't really need to be able
to print one either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 22:49:32 +00:00
Ingo Weinhold
f606e8fd79 mmlr + bonefish:
* AllocationTrackingCallback::ProcessTrackingInfo(): Also pass the
  allocation pointer.
* "allocations_per_caller" KDL command: Add option "-d". When given,
  each allocation for the specified caller is printed, including the
  respective stack trace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 22:26:23 +00:00
Ingo Weinhold
e32699b404 mmlr + bonefish:
Add ObjectCache::ObjectAtIndex().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 22:23:37 +00:00
Ingo Weinhold
328df922e6 mmlr + bonefish:
* Add TraceOutput::PrintArgs(), a va_list version of Print().
* Move code of TraceOutput::Print() to new private template function
  print_stack_trace().
* Add public tracing_print_stack_trace().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 22:22:14 +00:00
Michael Lotz
a5e2a43050 Fix the build with memory manager tracing disabled. The guard was missing
in the header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 21:40:40 +00:00
François Revol
7014f7f3e4 Fix method name in trace.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 21:29:19 +00:00
Ingo Weinhold
50175c99c4 mmlr + bonefish:
Refactor the "allocations_per_caller" KDL command related functions.
They expect an instance of a class implementing the new
AllocationTrackingCallback interface, now. The only implementation ATM
is AllocationCollectorCallback, which does the work the now removed
slab_debug_add_allocation_for_caller() did before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 21:16:14 +00:00
Rene Gollent
12a1034a7d Extend the generic Settings classes to support float and rect settings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 21:10:24 +00:00
Rene Gollent
15dbca93da Extend BVariant to support storing BRects as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 20:57:31 +00:00
Ingo Weinhold
f908ff9bb6 mmlr + bonefish:
* Fix build broken in r43078. The slab_debug_add_allocation_for_caller()
  wasn't guarded correctly.
* slab_debug_add_allocation_for_caller(): Add bool resetAllocationInfos
  parameter, which makes the function clear the allocation tracking
  infos after processing the data.
* "allocations_per_caller" KDL command: Add option "-r" to reset the
  allocation tracking infos. The next invocation of the command will
  only show the allocations made after the reset.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 20:35:49 +00:00
Ingo Weinhold
0422a0f3ae mmlr + bonefish:
* dump_allocations_per_caller(): Compute the total allocation count and
  size from the caller infos instead of using return arguments in the
  helper functions called.
* Move caller info update code from analyze_allocation_callers() to new
  function slab_debug_add_allocation_for_caller(), so it can be reused.
* Add MemoryManager::AnalyzeAllocationCallers() to collect the
  allocation information for the memory manager.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 19:40:27 +00:00
Adrien Destugues
244a545018 Mail daemon notifications, round 2:
* Use the proper identifier for each notification window : 2 per account for sending/receiving, and a global one to show the "n message received" message.
 * Use the mail daemon icon on the windows instead of the default ones
 * Shuffle the text in the windows a bit so it makes more sense
 * Use the settings from the mail preflet for showing or not the window.
The meaning of "always" changes a bit, since it is not possible to have a "forever" timeout with the notification server (and that would be rather annoying).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 19:25:40 +00:00
Rene Gollent
4b38291dbc Style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 19:10:21 +00:00
François Revol
8fe82997ba Some more tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 18:59:47 +00:00
François Revol
f6fbf32a02 Dump the 68040 mmu registers before touching them.
Added a comment about the Milan clone which uses the mmu in the BIOS to emulate Atari hardware, and the Transparent Translation registers to map the PCI bus, which screws up with our current code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 18:58:18 +00:00
Ingo Weinhold
e1c6140eaa mmlr + bonefish:
* Add optional stack trace capturing for slab memory manager tracing.
* Add allocation tracking for the slab allocator (enabled via
  SLAB_ALLOCATION_TRACKING). The allocation tracking requires tracing
  with stack traces to be enabled for object caches and/or the memory
  manager.
  - Add class AllocationTrackingInfo that associates an allocation with
    its respective tracing entry. The structure is added to the end of
    an allocation done by the memory manager. For the object caches
    there's a separate array for each slab.
  - Add code range markers to the slab code, so that the first caller
    into the slab code can be retrieved from the stack traces.
  - Add KDL command "allocations_per_caller" that lists all allocations
    summarized by caller.
* Move debug definitions from slab_private.h to slab_debug.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 18:34:21 +00:00
Ingo Weinhold
69d7ad7dc5 mmlr + bonefish:
* Move struct tracing_stack_trace to tracing.h header.
* Add tracing_find_caller_in_stack_trace(). Helper function to get the
  first return address of a stack trace that is not in one of the given
  address ranges.
* Add AbstractTracingEntryWithStackTrace::StackTrace() getter.
* Add tracing_is_entry_valid(). Checks, based on the additionally given
  time, whether a tracing entry is (probably) still in the tracing
  buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 17:16:29 +00:00
Adrien Destugues
506a6eb522 Fix delay loop condition in BPushGamesound test. It seems to work mostly fine.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 16:58:35 +00:00
Michael Lotz
485bb14c36 Prefix the heap version of the "allocations" debugger command with "heap_".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 16:29:28 +00:00
Rene Gollent
76ce2c7ef7 More work-in-progress towards getting settings saved/restored.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 15:45:31 +00:00
Adrien Destugues
0044a8c39a Apply patch by bkmx from ticket #5093 : fixes some buffer index math in
BPushGameSound so at least it doesn't crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 14:31:08 +00:00
Michael Lotz
5fd0416842 Tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 14:27:25 +00:00
Rene Gollent
8252ed52dd gcc2 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 14:07:35 +00:00
Adrien Destugues
f3b7dcd4d2 * Remove the now unneeded Message-logic for hiding and showing the preview
* Put the clock mode radio buttons above the preview
Also makes hiding hte preview work again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 13:35:58 +00:00
Rene Gollent
0d3e347507 WIP: Add abstract base class TeamUISettings and corresponding subclass GUITeamUISettings.
Once complete, these will be used to store/restore settings for the debugger's various UI
components.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 12:45:01 +00:00
François Revol
e5712f7bf8 Fix constness to avoid warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 10:55:34 +00:00
Adrien Destugues
1a5c1f9ed5 * Use const references instead of pointers for the read from/write to
attribute/resource method in locale kit catalogs
 * Only load the embedded catalog if nothing else was found, so it can easily
be overridden
 * Change the resource type to 'CADA' (CAtalog DAta) for embedded catalogs, and
use a hash of the language code as the resource ID. This allows multiple
languages to be stored in the same file and does not interfere with the user
storing his own BMessages as resources.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 10:13:34 +00:00
François Revol
c87c47960c Pass an existing or created transaction to CreateVolumeID(). Hopefully it's correct this time. Axel?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 09:49:05 +00:00
François Revol
95f7cdcccb Fix BeOS build for comparison. This test still fails on Haiku btw...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 09:32:05 +00:00
Adrien Destugues
701d92850e Mail daemon now uses standard notification windows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 08:13:02 +00:00
Axel Dörfler
b47bd3cf51 * Work in progress of an IMAP response parser that will replace weak and
error prone parsing method that is currently utilized by the IMAP module.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 23:33:22 +00:00
Adrien Destugues
74ddcac51f Sorry, fix #7557 for real.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 22:52:18 +00:00
Adrien Destugues
85feb4de3f Wrong fd count given to select. Fixes #7557.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 22:39:58 +00:00
Adrien Destugues
a40e8645e2 Switch the default value of the "crlf" option in telnet. This means lines are
ended with \r\n instead of \r\0. Both are accepted in most telnet servers, as
there is some unclear wording in the telnet RFC. However, using \r\n allows to
use telnet for other stuff, like connecting to an SMTP server. Debian Linux
telnet client also uses that by default (likely other Linuces use the same).

Fixes #2663.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 22:05:24 +00:00