The Team menu now has a menu item allowing one to tell the debugger to
stop whenever a new executable image is loaded by the debugged team.
This setting is not currently persisted, though that can be changed if
desired.
In debug_cleanup(), if the debug syslog buffer is disabled (the default when
KDEBUG_LEVEL is 0), then a new buffer is allocated with kernel_args_malloc().
This is done after kernel_args addresses have been converted to 64-bit, so
the address the kernel gets will be 32-bit, resulting in the page fault seen
in #9842. Fixed by moving the call to debug_cleanup() to before
convert_kernel_args().
The post syscall debug events used for output capture have an
unfortunate side effect: when asked to debug a thread, the thread is
interrupted, which, if currently blocked in a syscall will cause it to
unblock and send a post syscall event indicating such. However, this
will also absorb the debug stop flag that was set by the initial debug
request, and so we won't actually get the separate event indicating
thread debugged.
Consequently, we now set a pending stop request flag on the
corresponding Thread object, and check if it's set when processing
syscall events. If so, we treat such an event as having triggered a
debug stop even though the received event type is not explicitly
B_DEBUGGER_MESSAGE_THREAD_DEBUGGED.
* Here is the Qemu command line option for Virtio SCSI devices:
-drive if=none,id=hd,file=haiku.image -device virtio-scsi-pci,id=scsi -device scsi-hd,drive=hd
* virtio_scsi.h is copied unchanged from FreeBSD, except for the _PACKED directive.
* Some oem sbios implementations are buggy
and don't overwrite the LVDS panel info over
LVDS_Info in vbios as they should.
* Bit-bang EDID info from LVDS connector before
falling back to the LVDS_Info table.
* Partially fixes#8457
... in case of team creation error. Once assigned to Team::io_context
the Team object takes responsibility of the I/O context object and
releases the reference on destruction. load_image_internal() and
fork_team() were thus releasing one reference too many.
Fixes#9851.
The Deskbar and Time preferences were both relying on BCheckBox's
previous unlimited max width to get their containing BBoxes to be the
right size. Adjust the box constraints to make this happen at the level
of the box instead.
...on controls where it makes sense:
- BRadioButton and BCheckBox now return their preferred size as their
maximum.
- BRadioButton, BCheckBox and BTextControl now use left alignment by
default, as this is the most common use case for them.
Quite a few layouts seem to depend on the previous behavior, and there
isn't really an elegant way to resolve that for now, unless I miss
something in the lauout APIs. However, this does need to be looked at
at some point, for some other controls as well, since it effectively
makes it impossible to properly use such controls in horizontal groups
and get an expected result.
DatabaseLocation::OpenOrCreateType(): BNode::WriteAttr() returns the
number of bytes written, not just an error code., so we erroneously
reported an error on success.
Fixes the first part of #9845.
If we had a source code change that resulted in a new file that was shorter than
the entire view, the section below the last line wouldn't get repainted properly.
- Revert hrev45802. However, implement the same essential logic in
the TeamWindow itself, and have it guard the StackTraceView,
VariablesView, and step control buttons. This fixes flickering
in between short steps since it prevents the intermediate clear
from happening unnecessarily.
- Implement appropriate guards for the interim wait state.
Since the individual _AddNode() invocations notify their node additions,
NotifyTableModelReset() isn't really appropriate here after all, since
the net effect will be seeing all the nodes getting added, then removed
again, then re-added. Also fixes the fact that the variables wouldn't get
cleared when picking Run, until we stopped again.
Configure BStringView to respond to messages to get and set Text and Alignment
properties. Fill out ResolveSpecifier() and GetSupportedSuites accordingly.
BeOS R5 did not provide any additional scripting support for BStringView so
this goes above and beyond what BeOS R5 did, but, doesn't break backwards
compatability.
BTabView::RemoveTab() directly manipulated the selected index, which
would cause problems in conjunction with the recently introduced short
circuit, most notably observable in Terminal.
* ExpanderSettings: Use a settings directory "expander" and rename
settings file to "settings".
* ExpanderRules: Read expander rules from "rules" files in the settings
directory, then from files in expander/rules subdirectories of the
installation location data directories, and finally add the built-in
rules. This allows packages to provide expander rules (as already
done by the p7zip package).
* OptionalPackages: Remove AddExpanderRuleToHaikuImage invocations.
* ImageRules: Remove Expander rule file related rules.