Requires HaikuPorts#7573 to be merged.
Closes#17836.
Smoke-tested on beta4 32 bits:
Gutenprint printer addon loads libgutenprint.so.9.5.0, shows new
printer models from where to choose from at "install new printer"
time, and "prints something" when using the Print-To-File transport.
Change-Id: Ia40dfd3c2163795e83c2cc173fd510d64c4bf6c9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5969
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Change-Id: I45b3fbe0b4ec014d185ea8c3ed8798ae316e54a9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7554
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Partial change, for testing on x86_64. You need to build with
-sHAIKU_NO_DOWNLOADS=1 and manually provide the needed packages in
generated/downloads.
Confirmed working on x86_64. Other platforms will need similar updates.
Change-Id: I81ca4b1d81bd18e64f50250970e00e0a072072d3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7278
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* This condition here is "we are unaware of this filesystem
or it is not formatted"
* Since a filesystem could exist, we don't want to falsely
guide users that data doesn't exist within a partition,
when it could actually exist.
* In this case, I had a bcachefs filesystem, which showed
in DriveSetup as "Not formatted (Linux data)"
* With this change, the language adjusts to "Unknown (Linux data)"
Change-Id: Ib88fea16ee9403419d54bb5223ceee950591ce56
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7540
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: humdinger humdinger <humdinger@mailbox.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Legacy icons would not be shown anymore, if scaling was applied.
* BApplicationInfo::GetIconForType() (and similar methods) do not support
scaling legacy icons, so when you request those with a non-standard
bitmap size, it will not work.
* Therefore, Icon::AllocateBitmap() now has a legacy mode that does no
scaling.
* And, since the Icon is not being drawn to screen directly,
Icon::GetIcon() does not support rescaling the source bitmap.
Change-Id: Id15b42260918b6b56773dd9aae82aee3f03a31f4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7547
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Default "pos" to "-1" instead of 0 and check for this value
instead of ops->fd_seek directly in IO operations.
* Set "pos" to "0" only for seekable vnodes.
* Return ESPIPE in read() and write() if the specified pos is not
-1, but the descriptor->pos is.
Fixes the VFS part of #18836.
Change-Id: Ib4da1652b06798588abedc98963aeb63511d3e41
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7544
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
DT_RUNPATH is generated by the linker instead of DT_RPATH when using --enable-new-dtags
It seems to be the default when using ld.lld
Normally one difference is LD_LIBRARY_PATH is checked before DT_RUNPATH (and not with DT_RPATH),
but we don't check LD_LIBRARY_PATH at the moment. Checking LIBRARY_PATH isn't an option, because
runtime_loader dosesn't use default paths, test suites would define LIBRARY_PATH empty.
Tested with tcpdump build_matrix.sh script, with clang 17, local libpcap, which requires
--disable-new-dtags on r1beta4.
Change-Id: Iacccde8d20e25ad14c5c548dd8832ea32b67e228
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7539
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Using the current time can be confusing when looking at packages or
the bootloader, as the time represents whenever the new state was made,
not when the old state was.
When there is no activated-packages file, we just use the current time
anyway. This means that on newly created systems, the first two states
will have the same time, and the second will have an extra "-1" on the
end of its name to distinguish it (if for some reason the activated
file retains its time, then you'll get "-2", etc.)
Change-Id: I128764ae4650a3433e2584f3ed154b04cf850b19
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7543
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
All callers just set it to "0", and it's not clear
that it's actually useful outside vnode_path_to_vnode's
own usage of it, anyway.
Makes the two function variants more distinct and harder
to accidentally mix up.
Just like the kernel has.
Put in the same file with the user_memcpy wrapper,
and rename the file to "misc.cpp" (which is a name
also used in libroot_build for a file containing
miscellaneous wrapper functions.)
Otherwise we could cause leaks.
Most of the time this check should be optimized out,
as most uses of AutoDeleter don't invoke SetTo. But
it would have caught some bugs in the VFS refactors
(which wound up being cancelled out by later commits
anyway, but this would've exposed them.)
Just invoke debugger(), which calls the kernel
debugger when compiled in kernel mode. And define
debugger() inline in this header if OS.h is not
included to avoid namespace pollution.
Do not fail silently if the saved fFilePanelPath doesn't exists, or
otherwise can't be used.
Default to B_USER_DIRECTORY, and print the issue to stdout at least.
Change-Id: If08720fa0d6d91bb7bd4b5a922be7136012aae95
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7536
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
hrev57608 changes conflict with the use of left-option-as-meta (#18832).
Avoid that by using:
- CMD+left/right for switching tabs, and Shift+CMD+left/right for moving them.
- Ctrl+Shift+up/down for one-line-at-a-time scrolling.
Should fix#18832, but I'm still not happy with those scrolling shortcuts.
Also: removed some `(mod & B_COMMAND_KEY)` checks that don't make much sense
on `BView::KeyDown()`. They were there since hrev26038.
Change-Id: I8d276d18057d309b786f0480c27071cf084b38ef
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7495
Reviewed-by: humdinger humdinger <humdinger@mailbox.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Update bash to a less-buggy working native build.
* Add file for python3
* Add readline for bash
* Update xz_utils to a working native build.
Change-Id: Iedfcb8277b242ea43a2fd870850057429c6b09e0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7528
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
While AVPacket itself contains other fields, the
important ones are all static, and fit in 64 bytes.
So we can put them into the chunk media header directly
and then grab them again in AVCodecDecoder.
With that passed through, we can then use the
best_effort_timestamp, as it's more likely to be
correct.
Change-Id: Ied82137694f1307d4dcb177f3f9a7cb6b798461a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7525
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
acgcc.h defines ACPI_FLEX_ARRAY as struct containing empty struct
and flexible array member. This leads to unintended consequences when
it is compiled as C++ code, because empty struct in C++ is not zero-sized.
This breaks querying interrupt numbers in acpi_irq_routing_table.cpp.
Apply fix from upstream: bce7c55e99
Change-Id: I8cadbacd564660b0fad9addd2ce58f39c6f45ac2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7516
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Aside from leaking resources it caused a race that could segfault
DPC thread when its stack was unmapped.
Change-Id: If6943e7fd834cac8f9807b85ecbb77e227f47a94
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7512
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Additional tests for parsing the language from
an ID.
Change-Id: Ia22b5e528a0dd9bdf10f3f060b01429fc95a799b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7517
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Noticed by Joachim Mairböck after I hastily merged change 7402.
Also add named variation instance selection for fonts loaded from memory
areas like there already is for files.
Change-Id: I76de22181dc39559956c25987165be2f8a8c4a37
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7493
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
It's not used for anything by the OS but userspace might want
to use it for its own purposes.
Change-Id: Icda4bcd6de9d68596555e81293c8bd075f80a2a4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7511
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>