Commit Graph

39291 Commits

Author SHA1 Message Date
Rene Gollent
874abbdaaf Remove unnecessary cast. 2013-04-27 14:04:35 -04:00
Rene Gollent
8a9423ee95 Add RangeList utility class.
- Tracks a set of ranges. Implicitly deals with collapsing overlapping
  ranges as they're added.
2013-04-27 14:04:35 -04:00
Rene Gollent
b11fd75b4b Fix broken ValueNodeChildrenDeleted() behavior.
- Due to the way the item list was being iterated,
  ValueNodeChildrenDeleted() would only actually remove every
  other child.
2013-04-27 14:04:34 -04:00
Rene Gollent
aa366c07b1 Add an information blurb option to PromptWindow.
- PromptWindow now takes a parameter which contains optional
  informational text to display above the text control.

- Adjust callers.
2013-04-27 14:04:33 -04:00
Ingo Weinhold
a83983a2cd acpi_cpuidle: Fix driver initialization
* For some reason the code in acpi_processor_init() assumed that the
  CPU index returned by ACPI was 1-based. On my machines it is 0-based
  and the syslogs on Trac from the last months don't show any
  exception. The code even contained a hack to force satisifying that
  assumption for a single-CPU machine.
* Instead of calling intel_cpuidle_init()/acpi_cpuidle_init() when
  initializing the driver for the device node for CPU 0 -- thus
  depending on the order the device manager iterates through the CPU
  device nodes -- rather check whether all CPU nodes have indeed been
  encountered.
* acpi_cpuidle_init_driver(): Don't leak the cookie in error case.
* acpi_cpuidle_uninit_driver(): Clear the sAcpiProcessor element for
  the uninitialized CPU node. We'd also have to unregister the idle
  callback when acpi_cpuidle_uninit_driver() is called for the first
  CPU device node, but there isn't any API for it ATM.

Fixes a crash on machines with multiple CPUs where acpi_cpuidle_setup()
wouldn't already fail early (apparently only mine).
2013-04-27 17:13:04 +02:00
Ingo Weinhold
b28421c927 acpi_cpuidle.cpp: Some style cleanup
Just what I spotted at the first glance. There's more general cleanup
to be done, e.g. regarding the public API.
2013-04-27 17:13:04 +02:00
Michael Lotz
a064168869 Fix truncation of comparison value introduced in 848acd67.
Casting the difference of the two off_t values to size_t may truncate
the result. Doing so before the comparison will therefore break it.
Instead cast the size to off_t to get around the signed versus unsigned
integer expression comparison and then cast the result of the comparison
to size_t again. Should fix #9714.
2013-04-27 18:42:05 +02:00
Jérôme Duval
32d7bcb470 VMAnonymousCache.cpp: use off_t instead of page_num_t
* use off_t instead of page_num_t to fit in swap_hash_key struct.
* this fixes narrowing conversion and signedness warnings on GCC 4.7.
2013-04-27 14:43:20 +02:00
Jerome Duval
dc0e22d800 Revert "VMAnonymousCache.cpp: changed page_index type to page_num_t"
This reverts commit f7176b0ee5. Citing Ingo:
"off_t is the correct type to use for addressing pages in a cache/file,
which page_num_t should only be used for physical pages." I'll see how to
fix the GCC 4.7 warnings differently :)
2013-04-27 13:36:49 +02:00
Alexander von Gluck IV
e514bc713c usb_asix: Add DUB-E100 rev.C1 USB ID 2013-04-27 00:28:49 +00:00
Jérôme Duval
f7176b0ee5 VMAnonymousCache.cpp: changed page_index type to page_num_t
* consistently use page_num_t for page numbers and off_t for offsets and sizes.
2013-04-26 21:17:39 +02:00
Jérôme Duval
cc3fb1f518 icon-o-matic: converts the result of round() to uint8 to fit in struct rgb_color.
* GCC 4.7 warning: narrowing conversion of '(int)(((ColorPickerView*)this)->ColorPickerView::r * 2.55e+2f)'
from 'int' to 'uint8 {aka unsigned char}' inside { } is ill-formed in C++11 [-Werror=narrowing]
2013-04-26 21:17:38 +02:00
Jérôme Duval
5f08555a59 GCC 4.7.x doesn't allow writes in a referenced packed struct.
* error: cannot bind packed field 'image->preloaded_elf64_image::elf_header'
    to 'ELFLoader<ELF64Class>::EhdrType& {aka Elf64_Ehdr&}'
2013-04-26 21:17:36 +02:00
Jérôme Duval
44d2f5f53e scsi bus manager: casts path_id to uint8.
* added a TODO about create_id() generating int32 ids when we need uint8.
* GCC 4.7 warning fixed: narrowing conversion.
2013-04-26 21:17:36 +02:00
Jérôme Duval
848acd672c devfs: casts as size_t before comparing.
* error: comparison between signed and unsigned integer expressions.
2013-04-26 21:17:34 +02:00
Jérôme Duval
8b9c0710cd PCI bus manager: changed the type of domain from int to uint8.
* fixed narrowing conversion problem found by GCC 4.7.
2013-04-26 21:17:33 +02:00
Jérôme Duval
d762df1df1 GCC 4.7.x doesn't allow setting a field in a referenced packed struct.
* error message: error: cannot bind packed field
'args->kernel_args::platform_args.platform_kernel_args::apm' to 'apm_info&'
* the reason would be that the reference doesn't have alignment information anymore.
* changed the reference to const for read access, and use the long form for setting a field.
2013-04-26 21:17:31 +02:00
Jérôme Duval
40cf1c0518 net_server: 0xff is out of the bound of char, use uint8 instead
* found by GCC 4.7.3
2013-04-26 21:17:29 +02:00
Rene Gollent
3e9e1e11b2 Resolve TODO: get team information via DebuggerInterface. 2013-04-25 18:54:59 -04:00
Rene Gollent
2a5d40cbe9 Add GetTeamInfo() call to DebuggerInterface.
- Abstracts out retrieving team information, since this may need to be
  done differently depending on the interface type.
2013-04-25 18:54:58 -04:00
Rene Gollent
aecef63c52 Add team information model class. 2013-04-25 18:54:58 -04:00
John Scipione
926535abb0 Style update to BListView.
Mostly rename msg argument of MessageReceived to message. Also a couple
of pointer style fixes.
2013-04-25 17:55:21 -04:00
Rene Gollent
95098f927d Fix some problems with typecast handling.
- If the given type had no modifiers specified, the base type string
  wasn't being moved out of the input buffer, leading to it mistakenly
  being parsed as a modifier. This would result in errors for simple
  cases such as a cast to size_t. Thanks Axel for reporting.
2013-04-24 22:07:27 -04:00
Rene Gollent
bbaaaf2eae Improve VariableView's tooltip handling.
- Make GetToolTipInfo() sensitive to the column being hovered over.
  If hovering over the variable name, we display its value location
  information as before. However, if hovering over the value column,
  the tooltip now displays the full value of the variable, if
  available.
2013-04-24 21:17:49 -04:00
Rene Gollent
7b6fd5d1a8 Some more report format fine tuning.
- Removed extraneous tabs.
- Shortened locking column in area/abbreviated some names.
2013-04-24 18:05:02 -04:00
Pawel Dziepak
26b2423794 runtime_loader: Always map program image at random position 2013-04-24 14:06:05 +02:00
Pawel Dziepak
902d41fc75 util: Use real_time_clock() in secure PRNG 2013-04-24 14:05:28 +02:00
Pawel Dziepak
c36a000cb4 vm: Fix off-by-one mistakes in _InsertAreaSlot 2013-04-24 14:05:27 +02:00
Rene Gollent
dd817ff93c Handle team deletion debug event.
When the target team exits, notify the user and shut down the debugger.
2013-04-23 23:05:36 -04:00
Rene Gollent
8b49cb7645 Rework report format as suggested in #9697.
- Areas, images and semaphores are now presented in a more readable
  tabular format.

- Areas: Columns now include base address, end address and size to
  make it easier to determine if e.g. an address easily falls within
  a given area, and are also sorted by base address. Protection flags
  and locking have been made more concise, with a corresponding key.
  Name has been moved to the last column to allow for a more compact
  format.

- Images: Name moved to last column for improved column formatting,
  purposes, and sorted by load address.

- Threads are now sorted such that all threads in exception states
  come at the tail end of the list, and the format has been revised
  to make them a bit easier to parse. State is only indicated if
  something other than running, along with any available exception
  state messages.
2013-04-23 21:31:18 -04:00
Jérôme Duval
8386448172 ControlLook: fixed wrong conversion to uint32 2013-04-23 23:29:51 +02:00
Alexander von Gluck IV
526232b6d8 usb_asix: Little additional style cleanup
* Things I missed the other day
* No functional change
2013-04-22 20:47:43 -05:00
Rene Gollent
2b7a67e7aa Fix #9700.
- CLI "threads" command now outputs the exception reason for stopped
  threads, if available.
2013-04-22 21:12:49 -04:00
Pawel Dziepak
0fef11f1a8 arch: some CPUID leaves may be not available 2013-04-23 02:43:26 +02:00
John Scipione
25ca105ebf Tiny style fix 2013-04-22 20:10:34 -04:00
Rene Gollent
c24adb2950 Rework DefaultNotificationService registration.
- Instead of implicitly registering and unregistering a service
  instance on construction/destruction, DefaultNotificationService
  now exports explicit Register()/Unregister() calls, which subclasses
  are expected to call when they're ready.

- Adjust all implementing subclasses. Resolves an issue with deadlocks
  when booting a DEBUG=1 build.
2013-04-22 18:42:21 -04:00
Pawel Dziepak
be573dcd88 arch: make sure not to set NX-bit when it is reserved 2013-04-22 17:36:36 +02:00
Philippe Saint-Pierre
3f0a22c88b Chart Demo: Fix for failure to detect already opened popup windows
Clicking on the FPS, color chart or any other buttons meant to make a popup
window appear was failing to detect and re-focus an already opened popup.
2013-04-21 20:51:02 -04:00
Rene Gollent
4b8a8922cb Reorder sections of debug reports. 2013-04-21 18:52:24 -04:00
Stefano Ceccherini
4ab260da80 Don't leak the socket.
BNetworkRoster::AddInterface and RemoveInterface did not close
the socket.
2013-04-21 21:16:52 +02:00
Rene Gollent
e33233713a Fix Web+ debug build. 2013-04-21 14:11:52 -04:00
Stefano Ceccherini
875b9f66d1 Use BNetworkDevice to get the current associated wireless network.
Use BNetworkDevice instead of using the driver settings api to get the
associated wireless network.
Also got rid of Settings::_PrepareRequest(), since it's no longer needed.
2013-04-21 18:26:14 +02:00
Rene Gollent
d519acd691 Some refactoring of Settings classes.
- Rename the current RangeSetting -> BoundedSetting and add an
  appropriate setting type enum, since that one actually describes
  a single value clamped to a range, rather than an actual range.

- Add RangeSetting class that has both a lower/upper bound and a pair
  of values representing the lower and upper ends of the range currently
  selected.
2013-04-21 12:01:17 -04:00
Rene Gollent
758a63dc70 Implement ranged container hooks in ArrayValueNode. 2013-04-21 11:46:12 -04:00
Rene Gollent
7d151f694c Extend ValueNode API.
- Add several new optional hook functions to ValueNode. These
  allow implementing subclasses to specify that they're a container
  type that can export a range of items (i.e. arrays, lists, etc.),
  and expose several operations on said ranges of child items.
2013-04-21 11:46:12 -04:00
Stefano Ceccherini
be1038406b Use the network kit api instead of talking to the netstack directly.
Use BNetworkInterface and BNetworkInterfaceAddress in the Settings class
instead of using ioctls. This works for everything except the default
route, for which there is no API yet.
2013-04-21 15:45:38 +02:00
Siarzhuk Zharski
bf88d81ea6 Fix GB18030 encoding support. And some cleanup ...
* Fix GB18030 Chinese encoding support for two and four bytes long
  characters. This finally resolves issue described in #6227;
* Processing of multi-byte characters was slightly refactored too;
* Remove the multi-byte 94/96 graphsets designation support for
  Japanese encodings. That looks like MuTerm rudiment, it had incomplete
  implementation and looked like abandoned. On the other hand multi-byte
  designation must be implemented in the same way as designation for
  single-byte graphsets was done. Note that this multi-byte graphsets
  designation has nothing to do with the normal encoding support for
  usual data flow conversion - so you will be on the safe side when
  use terminal encoding menu switch.
  The removed feature is the ancient technique to achieve different charsets
  support on 8-bit serial lines by assigning (designating) predefined
  sets of characters to G0, G1, G2 and G3 and selecting them during
  program life-time into GL (x20-x07E) or GR (xA0-xFF) areas by using LS
  or SS functions.
  For example xterm has no support for designation multi-byte graphsets
  at all. Anyway if this feature is required and you can provide the
  test environment - please let me know and I will be glad to implement
  this feature in more easy and consistent way;
* Remove unreferenced gSmbcsTable and gScsTable parsing tables that
  looks like is not used anymore;
* Remove gCS96GroundTable and gMbcsTable parsing tables that were used
  by multi-byte 94/96 Japanese graphsets support and now obsoleted by
  removing mentioned feature;
* Remove some obsoleted #defines, like HW statusline support for
  example, from parse tables definition.
2013-04-20 16:51:42 +02:00
Rene Gollent
8c1b20b862 return ESRCH when team isn't found by name. 2013-04-20 09:23:00 -04:00
Rene Gollent
87d33c4ff3 Slight refactoring.
- Factored out CppLanguage::ParseTypeExpression() into one that could
  be used in CLanguageFamily, with some hooks to help differentiate
  what's allowed in C vs C++. Makes the type parsing available for
  C files as well, and consequently allows typecasting to work for
  those.
2013-04-19 22:55:59 -04:00
John Scipione
4122ce2aff Move the save panel to the middle of the window as well 2013-04-19 21:25:18 -04:00
John Scipione
9e5508fab4 Move the alert to the middle of the window 2013-04-19 20:15:24 -04:00
Rene Gollent
3464764f7d Cleanup, no functional change. 2013-04-19 18:35:47 -04:00
Rene Gollent
3c6ba4733b Fix #9684.
Implement MemoryBlockRetrievalFailed() hook in
DebugReportGenerator. Use it to report failure to dump the
stack memory region instead of hanging forever waiting for
the request to succeed.
2013-04-19 17:48:46 -04:00
Rene Gollent
808bcad05c Add MemoryBlockRetrievalFailed() hook.
Adjust RetrieveMemoryBlockJob to call said hook if we fail to fulfill
the memory read request.
2013-04-19 17:47:04 -04:00
Rene Gollent
ad9496c20c Fix #9687.
- Fix operator prefix/suffix reversal that caused the first
  argument to be evaluated twice.
- Track if we managed to find a name match for the team at all.
  If not, print an error indicating such.
2013-04-19 17:27:26 -04:00
Philippe Houdoin
9058801fe2 Fixing my own mess introduced in r41274. Fix #9446. 2013-04-18 02:06:20 +02:00
John Scipione
30e6af93e4 Eliminate background app and Deskbar app checks
This is a follow up on the fix for #9632.

Now that the group list in Deskbar never deals with background apps or the Deskbar app itself we can simplify the code by eliminating the checks, especially in Switcher.cpp (Twitcher).

Checking for background apps and Deskbar has also been eliminated from TExpandoMenuBar and TTeamMenu. The single point of entry for these checks is in TBarApp::AddTeam().

In Switcher.cpp remove OKToUse() since the list is assumed to contain only valid entries. TSwitchManager::CountVisibleGroups() also got removed because all groups are visible. TSwitchManager::_FindNextValidApp(), TSwitchManager::QuitApp(),  TIconView::ItemAtPoint(), TIconView::ScrollTo(), and TIconView::FrameOf() all got simplified significantly.
2013-04-17 18:50:03 -04:00
Philippe Houdoin
1e77e4f852 Tokenize directly in team_info.args buffer. 2013-04-18 00:20:10 +02:00
Philippe Houdoin
cc2c83fa5c Applied patch by Prasad Joshi to add kill by process name support. Thanks. Closed #1944. 2013-04-18 00:20:05 +02:00
Pawel Dziepak
103977d0a9 arch: NX is initialized too early on non-boot CPUs 2013-04-18 00:15:57 +02:00
John Scipione
807ea4dad0 Rename sig variable to signature in BarApp 2013-04-17 17:20:49 -04:00
Philippe Houdoin
184fada4e9 Connecting an UDP endpoint was resetting a previously bound local port. Fix #9678 2013-04-17 22:23:27 +02:00
John Scipione
ab37997c98 Style fix and comment update 2013-04-17 15:58:42 -04:00
Pawel Dziepak
46575667eb Merge branch 'aslr' 2013-04-17 20:07:32 +02:00
Pawel Dziepak
3ef8e34c0a nfs4: fix few issues related with file caches
* update metadata cache when writing to cache
 * do not limit size of a io request
 * minor checks in Inode::Write
2013-04-17 19:29:54 +02:00
Rene Gollent
f6c0237372 Fix handling of string fields in BMessages.
We can't depend specifically on a generic array type of a primitive
being available in the global type cache, because there might not have
been a DIE for it. As such, simply look up the type for the character
primitive and then derive an array type from that instead.
2013-04-16 22:57:22 -04:00
Rene Gollent
1b74b08f75 Save/restore renderer settings in view state. 2013-04-16 21:19:20 -04:00
Rene Gollent
c819aef9a1 Add renderer settings to VariablesViewNodeInfo. 2013-04-16 21:18:59 -04:00
Rene Gollent
ba2c3d57f6 Extend Settings to allow value restoration via message. 2013-04-16 21:17:44 -04:00
Rene Gollent
2b9c68af5d Fix broken save/restore of split view settings. 2013-04-16 17:56:45 -04:00
Pawel Dziepak
84bb91df83 arch: use PRNGs from kernel utils for initializing stack pointer 2013-04-16 22:35:10 +02:00
John Scipione
af84ce79da Rename B_COLOR_WHICH_COUNT to kColorWhichCount 2013-04-16 03:44:42 -04:00
John Scipione
376e5bb692 Set legeneral_ui_info.mark_color to B_CONTROL_MARK_COLOR 2013-04-16 03:23:07 -04:00
John Scipione
45fec7fc74 Check for empty group list in _FindNextValidApp(). Fixes #9632
Thanks mmlr! I went with "The easiest solution". Perhaps the OKToUse() could be simplified by removing the checks for background apps and Deskbar but I prefer to keep it as is in case there someone changes the code in the future.
2013-04-16 01:32:28 -04:00
John Scipione
6e22ba05d6 Style update 2013-04-16 01:32:24 -04:00
Rene Gollent
41cec3e6d4 Remember any applied typecasts in VariableViewState.
Preserves and restores typecasts across steps like we already do
for node expansion states.
2013-04-15 23:17:27 -04:00
Pawel Dziepak
8614737f71 elf: restore correct region protection after relocation 2013-04-16 03:44:38 +02:00
Rene Gollent
3f7664ad1c Revert part of previous commit.
The aforementioned ReleaseReference() exposes what appears to be a somewhat
more severe issue, leading us to a deadlock. Need to rethink this a bit.
2013-04-15 21:10:44 -04:00
Rene Gollent
00d0a0eae3 Fix reference count problem as suggested by Ingo.
During DefaultNotificationService's constructor, we get registered
with the NotificationManager, which acquires a reference. When
uninitializing the module we need to release this reference before
calling the destructor in order to balance the books, as it were.
2013-04-15 20:54:31 -04:00
Pawel Dziepak
9f3bd49737 runtime_loader: explicitly randomize rld_heap and _rld_debug_ positions 2013-04-16 02:44:47 +02:00
Pawel Dziepak
db1ca60528 runtime_loader: randomize position of runtime_loader
* make runtime_loader a dynammically linked object
 * add kernel support for loading user images that need to be relocated
 * load runtime_loader at random address
2013-04-16 02:29:05 +02:00
Rene Gollent
001d65dba7 Disable broken hardware cursor accelerant hooks. 2013-04-15 18:07:01 -04:00
Rene Gollent
38cb1c9196 Improve debug output. 2013-04-15 18:06:01 -04:00
Rene Gollent
59a998dc1d Fix userland build with tracing enabled. 2013-04-15 18:05:35 -04:00
Axel Doerfler
c946981296 This should get the DEBUG=1 build further than the net.
* We need to start with a zero reference count, and we also don't want to
  be deleted by that mechanism.
* Note, I could not test the changes yet.
2013-04-15 20:26:09 +02:00
Jessica Hamilton
c61ed599d4 Fixes #9673 2013-04-14 20:38:02 -05:00
Rene Gollent
1fd93573e6 Fix incorrect type. 2013-04-14 20:30:34 -04:00
Rene Gollent
58a2847a12 Improve debug output.
Should make it easier to determine the exact reason the debugger
call is triggered.
2013-04-14 18:44:54 -04:00
Rene Gollent
eab9d5b444 Fix reference leak. 2013-04-14 18:44:54 -04:00
Rene Gollent
57245d2b73 Slight cosmetic adjustment.
If the current node is an address type and has as its only child an array type,
use the same approach we do for pointers to objects and hide the intermediate
dereference.
2013-04-14 18:44:53 -04:00
Rene Gollent
3fe982232b Fix array typecasting.
Since a C/C++ array is essentially pointer math, the derived type
needs to take this into account, otherwise the array indices wind
up being based off the address of the variable itself rather than
the array it points to.
2013-04-14 18:44:52 -04:00
Rene Gollent
d12519423f Adjust CreateDerivedArrayType to also take the lower bound.
Since valid array bounds vary by language, this needs to be passed
in by the source language creating the derived type. Adjust callers
accordingly.
2013-04-14 18:44:51 -04:00
Alexander von Gluck IV
88e9c0961a libnetwork: Check for ipv4 flag in resolv.conf
* Add option for forced IPv4 resolution.
* Helps with #8293
* Very slightly modified patch by donn
2013-04-14 17:03:32 -05:00
David Höppner
8bf3802f53 Fix #9671: sysinfo misses some extended features 2013-04-14 16:23:31 -05:00
Siarzhuk Zharski
4a65972ac4 Fix GCC2 build. Thanks to John for the warning. 2013-04-14 22:48:33 +02:00
Siarzhuk Zharski
a6ea4a194f Fix "Error opening terminal:xterm-256color" issue (#9636)
Looks like switching to declare "xterm-256color" terminal emulation was
made a bit early: there are lot of servers that still do not know about
this terminal. As was discussed in #9636 the only acceptable way is to
switch back to "xterm" and adjust corresponding entry in our local
termcap database to support 256 colors. So this changeset:

* Declare emulated terminal as "xterm";
* Change the colors and color pairs of "xterm" termcap entry to support
  256 colors;

Workarounds the #9636. Should be upgraded to "xterm-256color" some time
in the future.
2013-04-14 21:39:19 +02:00
Siarzhuk Zharski
f8668ab42f Improve File Encoding StatusView cell. (Fixes #9653)
* Encoding cell of the StyledEdit StatusView is visible now only in case
  the currently opened file encoding is not equal to default UTF-8 one;
* The Encodings menu that was opened by click on this cell is removed;
* Cmd-Opt-PgDn/PgUp shortcuts are added for quick iteration through the
  list of encodings.
2013-04-14 21:39:16 +02:00
Siarzhuk Zharski
1f8d927251 Make Windows-1250 encoding consistent with other
In sake of consistency with other Windows CP encodings:
* print_name is expanded to "Windows Central European (CP 1250)";
* B_MS_WINDOWS_1250_CONVERSION id looks like should be added into UTF8.h;
* mime_name set to NULL as other windows codepages have. That prevents
  at least from duplicating too much 1250's in the Terminal, Mail and
  StyledEdit encodings menus.
2013-04-14 21:39:13 +02:00
John Scipione
d52ffca978 If above the scroll limit, scroll to limit.
This case happens when you are scrolled to the end of the list and
you do an action that causes the view to shrink but not enough for
the scroll arrows to be detached such as remove a team or unexpand
an application. Before it would keep you where you were showing an
extra grey area, now it scrolls you back to the new scroll limit.
2013-04-14 14:53:58 -04:00
John Scipione
753d86ac84 Need to SaveExpandedState() before rebuilding items.
Also, if mini-mode we can skip updating the view because it doesn't get drawn
until you click the TeamMenu expander.
2013-04-14 14:05:29 -04:00