Files
RedBear-OS/local/recipes/qt/qtbase/source/tests/manual/diaglib/README.txt
T
vasilito f31522130f fix: comprehensive boot warnings and exceptions — fixable silenced, unfixable diagnosed
Build system (5 gaps hardened):
- COOKBOOK_OFFLINE defaults to true (fork-mode)
- normalize_patch handles diff -ruN format
- New 'repo validate-patches' command (25/25 relibc patches)
- 14 patched Qt/Wayland/display recipes added to protected list
- relibc archive regenerated with current patch chain

Boot fixes (fixable):
- Full ISO EFI partition: 16 MiB → 1 MiB (matches mini, BIOS hardcoded 2 MiB offset)
- D-Bus system bus: absolute /usr/bin/dbus-daemon path (was skipped)
- redbear-sessiond: absolute /usr/bin/redbear-sessiond path (was skipped)
- daemon framework: silenced spurious INIT_NOTIFY warnings for oneshot_async services (P0-daemon-silence-init-notify.patch)
- udev-shim: demoted INIT_NOTIFY warning to INFO (expected for oneshot_async)
- relibc: comprehensive named semaphores (sem_open/close/unlink) replacing upstream todo!() stubs
- greeterd: Wayland socket timeout 15s → 30s (compositor DRM wait)
- greeter-ui: built and linked (header guard unification, sem_compat stubs removed)
- mc: un-ignored in both configs, fixed glib/libiconv/pcre2 transitive deps
- greeter config: removed stale keymapd dependency from display/greeter services
- prefix toolchain: relibc headers synced, _RELIBC_STDLIB_H guard unified

Unfixable (diagnosed, upstream):
- i2c-hidd: abort on no-I2C-hardware (QEMU) — process::exit → relibc abort
- kded6/greeter-ui: page fault 0x8 — Qt library null deref
- Thread panics fd != -1 — Rust std library on Redox
- DHCP timeout / eth0 MAC — QEMU user-mode networking
- hwrngd/thermald — no hardware RNG/thermal in VM
- live preload allocation — BIOS memory fragmentation, continues on demand
2026-05-05 20:20:37 +01:00

62 lines
2.3 KiB
Plaintext

This is a collection of functions and classes helpful for diagnosing bugs
in Qt 4 and Qt 5. It can be included in the application's .pro file by
adding:
include([path to Qt sources]/tests/manual/diaglib/diaglib.pri)
For Qt 4, the environment variable QTDIR may be used:
include($$(QTDIR)/tests/manual/diaglib/diaglib.pri)
The .pri file adds the define QT_DIAG_LIB, so, diagnostic
code can be enlosed within #ifdef to work without it as well.
All functions and classes are in the QtDiag namespace.
function dumpText() (textdump.h)
Returns a string containing the input text split up in characters
listing category, script, direction etc.
Useful for analyzing non-Latin text.
function dumpTextAsCode() (textdump.h)
Returns a string containing a code snippet creating a QString
by appending the unicode value of character of the input.
This is useful for constructing non-Latin strings with purely ASCII
source code.
class EventFilter (eventfilter.h):
An event filter that logs Qt events to qDebug() depending on
configured categories (for example mouse, keyboard, etc).
class DebugProxyStyle (debugproxystyle.h)
A proxy style that wraps around an existing style and outputs
the parameters and return values of its function calls, useful
for debugging QStyle.
class LogWidget (logwidget.h)
A Log Widget inheriting QPlainTextEdit with convenience functions
to install as a message handler.
class LogFunctionGuard
A guard class for use with LogWidget logging messages when a function
is entered/left (indenting the log messages).
Can be instantiated using:
LogFunctionGuard guard(__FUNCTION__) or
LogFunctionGuard guard(Q_FUNC_INFO)
function glInfo() (glinfo.h):
Returns a string describing the Open GL configuration (obtained
by querying GL_VENDOR and GL_RENDERER). Available only
when the QT qmake variable contains opengl.
functions dumpNativeWindows(), dumpNativeQtTopLevels():
These functions du,p out the hierarchy of native Windows. Currently
implemented for Windows only.
function dumpAllWidgets() (qwidgetdump.h):
Dumps the hierarchy of QWidgets including information about flags,
visibility, geometry, etc.
function dumpAllWindows() (qwindowdump.h):
Dumps the hierarchy of QWindows including information about flags,
visibility, geometry, etc.