- When asking for signed/unsigned, IntegerFormatter was previously
treating all value types as int64, which would result in much larger
than expected values in the variable list in some cases. Inspect the actual
integer type of the variable and adjust the format string accordingly in
order to deal with that.
- If a string column was exactly the correct pixel width for the strings
contained within it, they would skip attempting to truncate the string.
However, the truncated string was always used for final drawing, with
the end result that the fields would be drawn blank. This would sometimes
manifest itself in Debugger where things like ID columns wound wind up
showing no data until one resized the column.
* Add WebKit optional package.
* Make WebKit a dependency of WebPositive
* Enable building of WebPositive from source.
Note: WebKit currently expands to lib/. Alternative gcc-subdirectories
are not taken into consideration. Though it is trivial to change.
* Patch from #6885: This filters out any disallowed characters from text
being pasted or dropped in. If the resulting filtered text is zero
characters long, it beeps. Works with styled text too.
* Coding style: variables renaming by korli.
This is an update from 20110922 and A LOT has happened since then. See
https://acpica.org/download/changes.txt for all the changes.
One of the more interesting is some problems with shutdown in ACPICAhas been fixed.
There may still be problems on our side though.
Not sure why but GCC 2 seems to be ignoring the extern "C" in smp.h when
compiling smp_boot_other_cpus() resulting in undefined references. Fixed
by putting extern "C" on the definition too.
Currently all debugger commands assume 32-bit pointers when formatting their
output. This means that on x86_64 the output is incorrectly formatted. Fixed
this by adding a B_PRINTF_POINTER_WIDTH definition (16 on 64-bit, 8 on
32-bit), and using this to correctly format the output. Not all commands have
been fixed yet, but all VM, slab, VFS, team, thread and image commands should
be correct.
- When binary searching functions in the source entry list,
comparing by name and location alone isn't sufficient, since
templates will match those for different instances, Fixes a crash on
exit where the wrong function would get removed from the list, while
the one we actually wanted to remove was still in the list, but then
had its source code cleared. This would later crash the comparison
function due to not being able to get its source location.
- When an image was unloaded, its corresponding image info was never
removed from TeamDebugInfo's list, leading to the latter containing
a deleted object, resulting in various random crashes.
- When attempting to unwind the call frame, we now search for the appropriate
FDE in both .debug_frame and .eh_frame. This mirrors gdb's behavior and
works around the ever-changing whims of the gcc developers as to which
section the requisite FDE/CIE resides in.
No major changes to the kernel: just compiled in arch_smp.cpp and fixed the
IDT load in arch_cpu_init_percpu to use the correct limit for x86_64 (uses
sizeof(interrupt_descriptor)). In the boot loader, changed smp_boot_other_cpus
to construct a temporary GDT and get the page directory address from CR3, as
what's in kernel_args will be 64-bit stuff and will not work to switch the
CPUs into 32-bit mode in the trampoline code. Refactored 64-bit kernel entry
code to not use the stack after disabling paging, as the secondary CPUs are
given a 32-bit virtual stack address by the SMP trampoline code which will
no longer work.
This matches layout in ACPICA and keeps a cleaner boundry between
Haiku and ACPICA code. The only haiku specific file in ACPICA is
achaiku.h and it will hopefully be included upstream soon.
Merging will be simpler as we can just replace acpica contents and
fix Jamfile and build errors in our code.