Commit Graph
66022 Commits
Author SHA1 Message Date
Alexander von Gluck IV 9b8fbc06c8 x86_gcc2: Bump ffmpeg6 aligning to previous x86_64 change
Change-Id: I45b3fbe0b4ec014d185ea8c3ed8798ae316e54a9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7554
Reviewed-by: Alex von Gluck IV <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
2024-03-27 14:07:30 +00:00
PulkoMandy 5b5c8f7d41 ffmpeg: update to ffmpeg 6
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 <[email protected]>
2024-03-26 21:44:17 +00:00
Alexander von Gluck IV ce01e4ea9b drivesetup: Be less assertive on unknown filesystem types
* 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 <[email protected]>
Reviewed-by: humdinger humdinger <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-25 19:58:26 +00:00
Augustin Cavalier c9eb52ae09 TCP: Check return value of ProtocolSocket::Open(). 2024-03-23 15:17:50 -04:00
Augustin Cavalier 1e0c1ca344 FileTypes: Fix -Werror=parentheses after prior commits. 2024-03-23 14:46:48 -04:00
Augustin Cavalier cdb8ce2438 runtime_loader: Fix incorrect usage of rpath.
This should've been changed to pathString
in 43d1a0dc3c.

Fixes #18858.
2024-03-23 14:40:46 -04:00
Axel Dörfler 820d309b71 FileTypes: Fixed missing legacy icons with scaling
* 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 <[email protected]>
2024-03-23 18:18:00 +00:00
Axel Dörfler f673ac0db7 FileTypes: Renamed some IconView members to avoid confusion
* fIcon -> fIconBitmap
* fIcanData -> fIcon
* Minor style fixes.

Change-Id: I16a99b41698824dacfe694d87826c137fa76dcbe
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7546
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-03-23 18:18:00 +00:00
Augustin Cavalier f5682ebb56 wb840: Remove usage of load_driver_symbols under DEBUG.
This function is not declared in the headers anymore,
and is a deprecated no-op.
2024-03-22 23:15:39 -04:00
Augustin Cavalier 34fcf3d9ea kernel/fs: Refactor file_descriptor seek-disabled behavior.
* 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 <[email protected]>
2024-03-22 17:21:43 +00:00
Jérôme Duval 43d1a0dc3c runtime_loader: Implement DT_RUNPATH
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 <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-22 15:58:53 +00:00
Augustin Cavalier 76142a9377 package_daemon: Try to use the old activated-packages file time for the state name.
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 <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-22 00:38:53 +00:00
Augustin Cavalier 6ac10b2f4b fs_shell: Fix double-assignment of targetDeleter.
Otherwise we will encounter the new assertion in AutoDeleter.
Fixes the nightly build following recent commits.
2024-03-21 16:29:09 -04:00
Augustin Cavalier 230110ff31 kernel/vfs: Remove "count" parameter from first vnode_path_to_vnode variant.
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.
2024-03-21 14:34:20 -04:00
Augustin Cavalier 36c1b695a8 kernel/vfs: Make vnode_path_to_vnode use VnodePutter internally.
Eliminates the "goto"s. Should not have any functional change.
2024-03-21 14:23:58 -04:00
Augustin Cavalier 4865dc8736 bootloader: Add a debugger() function.
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.)
2024-03-21 14:21:38 -04:00
Augustin Cavalier 97dc7e3bb2 AutoDeleter: Add assertion in SetTo that the object is not the one already set.
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.
2024-03-21 13:49:45 -04:00
Augustin Cavalier 90edc22bdf kernel/vfs: Fix reference leaks in vnode_and_path_to_dir_vnode.
Fixes #18805.
2024-03-21 13:47:21 -04:00
Augustin Cavalier 99e6fd949b kernel/vfs: Fix some potential edge cases around vnode creation.
Noticed as part of investigating #18805.

Change-Id: I158126979996f8527728d073ac2101f2f834bfb2
2024-03-21 13:47:21 -04:00
Oscar Lesta 5e20a59fa2 TextSearch: improve edge-case in opening of "Set target" BFilePanel.
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 <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-21 16:04:11 +00:00
Andrew Lindesay b982aa1d99 HaikuDepot: Version bump
Change-Id: I55bbf400c3db822e71253cf8e94520e5d0423f9c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7538
Reviewed-by: Jérôme Duval <[email protected]>
2024-03-21 10:35:39 +00:00
Oscar Lesta 1ddf7e73a5 Terminal: change some shortcuts again.
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 <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2024-03-21 09:40:09 +00:00
Alexander von Gluck IV f083212d46 packages/riscv64: Bump openssh to latest native built
Change-Id: Ibac22c144a1e9eeca0189a7b729ce5bfd4b9972e
2024-03-19 09:44:31 -05:00
Andrew Lindesay 43e19c4715 HaikuDepot: Fixes for Language Handling
Change-Id: Ic6d5a59396f778f684985fad0e39985197c380b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7524
Reviewed-by: Jérôme Duval <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-18 04:10:28 +00:00
Alexander von Gluck IV a40cec84d6 riscv64: Bump icu to 74, bump bash, add file, bump xz
* 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 <[email protected]>
Reviewed-by: Alex von Gluck IV <[email protected]>
2024-03-16 12:22:21 +00:00
Autocomitter be3a0d6043 Update translations from Pootle 2024-03-16 08:17:42 +00:00
Anarchos 935c0c739c vfs: rename is a no-op when same path.
The old behavior was introduced by the commit f40c5e3211 (05 Nov 2009),
while the new behavior is specified by POSIX: https://pubs.opengroup.org/onlinepubs/9699919799/functions/rename.html

The new behavior permits to rename an empty folder to itself without error, which was
encountered here: https://github.com/ocaml/ocaml/blob/trunk/testsuite/tests/lib-sys/rename.ml#L85

Fixes #18851.

Change-Id: Ie4e2999b695b8bb3ee69b1e3ae487323d8315d5e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7527
Reviewed-by: waddlesplash <[email protected]>
2024-03-15 16:46:25 +00:00
Augustin Cavalier 2812960782 network: Remove unnecessary WeakReferenceable::PrivatePointer checks.
These aren't needed anymore after the last commit.
2024-03-14 17:15:59 -04:00
Augustin Cavalier 776d091d8a WeakReferenceable: Return NULL in GetReference if the pointer is gone.
Fixes a major API footgun that caused #18759.
2024-03-14 17:15:59 -04:00
Augustin Cavalier 45bd581b70 media/ffmpeg: Pass most packet metadata to decoder.
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 <[email protected]>
2024-03-14 20:39:02 +00:00
Augustin Cavalier 6c05cfc094 media/ffmpeg: Add cast to appease GCC2. 2024-03-14 16:07:23 -04:00
Augustin Cavalier 3a3b54380a media/ffmpeg: Fix frameCount calculation when the stream duration is unset.
Fixes #18844.
2024-03-14 15:40:23 -04:00
milek7 04ac3d9687 arm64: Implement arch_cpu_sync_icache
Change-Id: I9df1e272971e1a3fd34297f24c6dd7b3d247c190
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7522
Reviewed-by: David Karoly <[email protected]>
Reviewed-by: Fredrik Holmqvist <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-13 18:06:18 +00:00
milek7 490d2ed427 arm64: Remove arch_cpu_memory_read/write_barrier functions as they are not used anywhere
Change-Id: I48af0ea175b32f86ed7cbceb079fa3866e8882ac
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7521
Reviewed-by: David Karoly <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Fredrik Holmqvist <[email protected]>
2024-03-12 20:45:00 +00:00
milek7 93c6a62bee arm64: Reset state in _fp_save to prevent it from affecting kernel
Change-Id: I5ef64eefc05735bd38314415f644f0124aaf607b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7520
Reviewed-by: Fredrik Holmqvist <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: David Karoly <[email protected]>
2024-03-12 20:44:43 +00:00
milek7 6034ee94a2 arm64: Use WFI for idling
Change-Id: I00f17c1db7c032879da59d17c67c13c24e0b9ef8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7519
Reviewed-by: Fredrik Holmqvist <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: David Karoly <[email protected]>
2024-03-12 20:44:21 +00:00
milek7 6f1b41351e acpi: Fix ACPI_FLEX_ARRAY in acgcc.h
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: https://github.com/acpica/acpica/commit/bce7c55e99a0b0db22542c2ed0aeff5571d597cb

Change-Id: I8cadbacd564660b0fad9addd2ce58f39c6f45ac2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7516
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-11 19:09:37 +00:00
milek7 cd806508a8 acpi: Use device node when resolving routing table link devices, because it could be relative path.
Change-Id: I2f0d3e5e8af27f5f42913d0cda23ad38437c5ed3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7515
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-03-11 19:09:37 +00:00
milek7 357ab76ef2 acpi: Fix cleanup at initialization failure.
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 <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2024-03-11 19:09:37 +00:00
Andrew Lindesay 866b1c0efe Locale : Tests for lang parsing
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 <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-03-11 14:13:29 +00:00
Máximo Castañeda a31ade72ce BFont: remove default values from ambiguous method
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 <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2024-03-10 09:18:45 +00:00
Autocomitter 993468cc20 Update translations from Pootle 2024-03-09 08:22:06 +00:00
Jérôme Duval 142723d197 libbsd: fix timespeccmp()
Change-Id: I5c1b1e5c4c583c0758b9f1b6eee67cb83053461d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7514
Reviewed-by: waddlesplash <[email protected]>
2024-03-07 21:40:05 +00:00
Jérôme Duval afeee28538 network/stack: fix trace build
Change-Id: Idbb27469bfcafaecbca5e13378a3e0c8d30d4201
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7513
Reviewed-by: waddlesplash <[email protected]>
2024-03-07 21:40:05 +00:00
milek7 51edf9322c arm64: Save/restore TPIDR_EL0 in _arch_context_swap
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 <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-03-07 15:53:37 +00:00
Oscar Lesta ea989da7f1 SetupEnvironment: export XDG_STATE_HOME env var.
Fixes: #18257.

Change-Id: Id7f81b4be3b63f383963f0d752e6ffeda41c3945
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7506
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2024-03-07 15:53:06 +00:00
milek7 06fae14eb9 arm64: Save/restore FPU state when handling IRQ or syscall
Change-Id: I8b2a36d57f410c0d06ca5ce90d1b997494072c94
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7510
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-03-07 13:28:27 +00:00
milek7 b6fd30b0ed arm64: Declare exception handlers as STATIC_FUNCTION
Branch inside exception vector slot is emitted through PLT veneer,
which clobbers x16 and x17.

Making the function static removes the veneer, and fixes the problem.

Change-Id: If8810999675b6e36926be9806e23a78b7e5c0f10
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7509
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2024-03-07 13:27:30 +00:00
X512 02463fb461 kernel/int: consolidate interrupt vector number to int32
This is no-op for 32 bit platforms because `int32` is defined as `long` there.

Change interrupt vector number from 64 bits to 32 bits for 64 bit platforms.

Change-Id: I52d1ad616cab16488804e9733c7afaf772a670ba
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7507
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Alex von Gluck IV <[email protected]>
2024-03-06 16:03:45 +00:00
PulkoMandy 0e703d1f1e vfs: log in syslog which inode is preventing an unmount
This may be somewhat helpful to investigate problems when unmounting
fails.

Change-Id: I72b70a34ca43697f22a13db6aff342abce38cd78
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7501
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Rene Gollent <[email protected]>
2024-03-05 11:49:21 +00:00