Commit Graph
67833 Commits
Author SHA1 Message Date
Augustin Cavalier 41b15d5fe4 ramfs: Check for errors when increasing file sizes.
Fixes the first KDL in #19583.
2025-05-28 16:10:01 -04:00
Jérôme Duval 4bb864d0a6 ext2: enable the checksum_seed feature
Change-Id: I5a34ae9247220f3c40441623bef2b3806b56d934
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9312
Reviewed-by: Jérôme Duval <[email protected]>
2025-05-28 15:19:17 +00:00
Augustin Cavalier 52fc5b5f7e libroot/posix: Switch back to using glibc's string/float-integer conversion routines.
This reverts commit 7174197a8d
and all following changes to the related musl files.
(Besides just the reverts, though, it also uses glibc's
strtol-related routines even outside wchar_t.)

musl's behavior of only parsing POSIX-locale strings here may
be technically conformat, but in conjunction with a filled-in
"localeconv", produces behavior that glib does not expect,
and thus in locales with separators other than '.' and ',' as
in POSIX (or EN) locales, it doesn't work properly.

Fixes the main problem in #19582.
2025-05-27 23:15:28 -04:00
Peter van Dijk caab09d392 bios_ia32: fix compilation with TRACE_DEVICES enabled
Change-Id: I3f7bad8fba842be7d119db5bd22a0280a6df179b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9243
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-05-27 12:57:22 +00:00
X512 c5f7786d06 BPicture: fix BeOS flattened format compatibility
- BeOS store strings with `int32` size prefix.

- Corrected `B_PIC_DRAW_STRING` field order to match BeOS.

Part of #1133.

Change-Id: I354fbf3e8a093ee21a87a6400a036751b442955b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9307
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Stephan Aßmus <[email protected]>
2025-05-27 12:56:03 +00:00
JackBurton79 e88cfea6cf Terminal: Fix possible double lock
Check if fMouseClipboard is be_clipboard, and do nothing in that case.
This could happen if SetMouseClipboard has never been called, for example when running as a replicant.
Also updated copyright year.

Change-Id: I2468d80404c429797bd8c906f3aa747ffc414fa8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9309
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-27 12:55:19 +00:00
PulkoMandy 0ec1d4526c Adjust all users of BUrl to new API
The old BUrl constructor with just a string is now private. The new one
has a default value for the second parameter, but C++ doesn't exclude
the private constructor from the candidate functions search. So, the
default argument for the new constructor needs to be explicitly
specified now.

Change-Id: Idb1915649ea3d2c59e344801a9d4fe201f8040e9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9236
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-27 10:43:12 +00:00
athira-selvam 1d242620b4 BUrl: rework handling of URL encoding
The content of a BUrl should always be in encoded form, to simplify
handling and validation.

Deprecate the UrlEncode member function and make it private. Instead aadd a new
way to handle URL encoding:
- All ways to set an URL (constructors, SetUrlString, and all setters)
  now take an extra boolean parameter indicating if the string is already
  encoded. The default value is to encode strings automatically.
- The static version of UrlEncode and UrlDecode, which operate on a
  string, are preserved and used by other parts of the API.

All unit tests adjusted to handle this, and still passing.

Fixes #12983

Change-Id: I06f06978d0d35e56d7c92b67f001856bb7dcafc8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1193
Reviewed-by: nephele nephele <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-27 10:43:12 +00:00
John Scipione 60bb9a9f96 BControl docs: Sum up abstract nature of BControl and how to set colors.
Change-Id: I509e5325a8fcfdc3bf75ba3e35c887c93099d3c5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8980
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-05-26 20:08:52 +00:00
Jim906 b3ffc5acf6 nfs4: Fix minor private cache issues
* Allow Inode::LookUp to handle the case in which the inode number in
  a DirectoryCache entry has no corresponding entry in the InoIdMap.
  This situation can occur after an unused node is freed (due to low
  system resources), since ~VnodeToInode will remove the node's
  InoIdMap entry.
* When a file is overwritten by a rename operation, remove the
  overwritten file's entry from the parent DirectoryCache (although a
  file with this name is still present in the directory, the old
  DirectoryCache entry is now invalid because the name is now linked
  to a different inode).
* Invalidate the cached stat info, including the number of links, in
  Inode::fMetaCache when linking to that inode.
* Make a correction to the assert added in
  https://review.haiku-os.org/c/haiku/+/9282. Entries may still be
  left in this client's InoIdMap if the file was deleted by another
  client.

Change-Id: Id437be32e51a4b324eb818b398d7facd23b7be56
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9308
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-05-26 18:27:35 +00:00
DigitalBox98 742a3c3359 Wacom: Added support for Intuos4 series
Change-Id: I8852a3f216201e794f705113bbf0ccf44fa9e582
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9284
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-05-24 16:30:07 +00:00
Alexander von Gluck 22ec477724 Time preferences: show help harder
Change-Id: I136c27e73ba191a0380c580559e82c49cca145e4
2025-05-24 07:54:10 -05:00
PulkoMandy 7dd8d99c5e Time preferences: show help if started with unrecognized command line flags
Change-Id: I4e87ebfab28104f94e77f6d83de4fefdd7897ef1
2025-05-24 14:50:31 +02:00
Autocomitter db7149574d Update translations from Pootle 2025-05-24 08:13:38 +00:00
X512 a73ec86407 Shape: remove unused code
Change-Id: I5fc23415aa79d216f04cdf0481794b3fa4c35bdf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9304
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-05-21 20:23:53 +00:00
Oscar Lesta 30e1b0862f TextSearch: add a simple file filter.
It relies on grep's "--include <glob>" option.

GUI layout code courtesy of Humdinger (thanks!).

Change-Id: I825abdaafaecdb750f2d27e510b310d20d3b461c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9285
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: humdinger humdinger <[email protected]>
2025-05-21 17:48:14 +00:00
Alexander von Gluck 2de2e7aec3 headers/BeBuild.h: Add gcc 15 support
Change-Id: I4572dc62159ad0abb593c48d0ff0008068815fbd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9302
Reviewed-by: waddlesplash <[email protected]>
2025-05-21 17:46:52 +00:00
waddlesplash 888ea83454 Revert "BTextView: Update word-wise/line-wise shortcuts"
This reverts commit 74ef92bc55.

Change-Id: I441d9cce87670e17141051fded594ae8aa6fc1fd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9299
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-21 17:46:34 +00:00
Alexander von Gluck c8f38f4627 boot/loader/elf: Minor fix for printf format type on x86_64
Change-Id: I619542fa13794bd359c589672d85138c8cf251fe
2025-05-21 12:00:54 -05:00
Alexander von Gluck 07a90ea93c ldscripts/kernel: set load base of 0
* 0463b95 removed a messy workaround ensuring the load address of
  the kernel was 0 due to riscv64's PIC kernel design breaking rv64
  booting.
* This is the proper fix to set the load address of our PIC kernel
  as 0 (triggering a dynamic position)

Change-Id: I010d70bef90c84ca0243601b86d79fbb60c38728
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9301
Reviewed-by: Alexander von Gluck <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-05-20 18:29:01 +00:00
Alexander von Gluck f5ceb1e1b6 boot/loader/elf: Add better debugging for AllocateRegion failures
Change-Id: I0372f7d58c4dbe1caaaebcfaac3c8a83c93d114d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9300
Reviewed-by: Alexander von Gluck <[email protected]>
2025-05-20 16:11:15 +00:00
Alexander von Gluck 7a1b94ee07 build-packages/riscv64: Bump zstd to 1.5.7
Change-Id: Iaf198c96950541fa226dabda5c0222b033695de8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9297
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-05-20 13:25:56 +00:00
Autocomitter debd2d9a90 Update translations from Pootle 2025-05-17 08:09:23 +00:00
Sylvain78 e9276a469d RemoteDesktop : reuse port 10900
Change-Id: I504cc9405138ee2892638c31adad35b844804df9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9279
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-16 12:46:24 +00:00
Oscar Lesta 6168c323f4 makefile-engine: add INSTALL_DIR and TARGET_DIR to the template.
Otherwise folks like me may miss that those can be used.

Change-Id: Icb7ccca6430089ec27cd6db21153562976f631ad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9281
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-15 09:06:27 +00:00
Jérôme Duval 3646c0e4ed tcp: retransmit SYN when not acknowledged after some time
* 4 times one second then exponential back off
* fix #19575

Change-Id: If9348191e1c8260f381e0e6fec338cfe83d53660
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9283
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2025-05-15 08:00:38 +00:00
Jim906 4dd25011f0 nfs4: Avoid deleting nodes when unlinking
* Stop deleting Inode objects in VnodeToInode::Unlink().
* Allow ~VnodeToInode() to do this in nfs4_remove_vnode(), instead.

At the time the unlink hook is called, other threads could still have
the file open.

With this change, the nfs4 driver can pass the open/unlink test in the
Connectathon NFS testsuite.

Change-Id: I6e4f67fbafad73dd2eeb285dbd2b9fa9670bf5b5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9282
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-05-14 16:05:28 +00:00
Autocomitter 9b9fc1597d Update translations from Pootle 2025-05-10 08:08:14 +00:00
Augustin Cavalier fee2283dc7 libroot/glibc: Fix vtable incompatibilities on GCC 2.
Fixes #19570.
2025-05-07 18:23:05 -04:00
Augustin Cavalier 1a88889e0a tests: Adjust remaining usages of "Server" rule. 2025-05-07 18:22:41 -04:00
Augustin Cavalier 09c3b0df77 Revert "Tracker: Don't create the TitleView and CountView for the desktop."
This reverts commit 79aac200ed.

They're actually used for typeahead-style selection of items,
so this caused #19569.
2025-05-07 16:56:38 -04:00
Sylvain78 1e4a50ea92 RemoteDesktop : improvement on parsing optional ssh port
Change-Id: Id656da88b68b0ae033e17711191e46d9f5961cc4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9244
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-05-05 12:07:20 +00:00
Oscar Lesta e19e27b42d keymaps: clean up Latin-American and Spanish keymaps.
- OPT+<key> combinations without a special meaning were generating
  a space (' ') char instead of just the normal key.

  While that helps to see on the Keymap preflet which OPT+<key>
  combinations generate "level-3" chars and which do not...
  having the "do not"s generate a space was akward.

  For reference, on Windows, the equivalent AltGr+<key> only generates
  a char for those key combinations that have a different than plain <key>
  result.

- Use "keymap -s" (--load-source) on the shebang.

Change-Id: Iec5f46f2fceb45d31528da3ed5d8c48826ce3bb9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9065
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-05-04 21:34:40 +00:00
PulkoMandy c1b0e7e0c5 Jam: Remove BinCommand, Executable, Server and Preference rules
They are all equivalent to the Application rule. Let's make things simpler.

Change-Id: I71f8518dae275542019d95fbdd7548b2129eeca8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9237
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-04 21:30:49 +00:00
PawanYr 0cb1b20a1f Haiku Depot: Fix text document ref crash
In +9146, I added a 'Search all packages' helper message to the Haiku
Depot featured packages view using a TextDocumentView; seems I used the
TextDocumentRef incorrectly, causing a crash on exit; this fixes that.

Change-Id: Idc08fb58dee13b6e85663097876a80a190941f57
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9242
Reviewed-by: Andrew Lindesay <[email protected]>
2025-05-04 05:16:23 +00:00
Autocomitter 8d5b39d2a6 Update translations from Pootle 2025-05-03 08:09:47 +00:00
PulkoMandy 730abd8a4f Update ACPICA to 2025-04-04
- Only patch remaining in Haiku is replacement of a #error with a #warning
  in achaiku.h. This change is preserved here.

Change-Id: I34474dc2995864ea67ae4e7257b0f6cc8f6a0d64
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8901
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2025-05-03 07:47:09 +00:00
PawanYr dead0b80b2 HaikuDepot: Add 'All packages' message
I've noticed that reviewers often search for something in Haiku
Depot on launch, and assume the package doesn't exist when they don't find
it under featured/don't check the other tab. This change adds a message
to the featured packages view if no results are found, and gives them a
link to click to switch tabs. It also adds a loading message to the
featured packages view.

Also, modify TextSpan::ClickMessage to remove empty message check

Change-Id: I045a2a91c945e28e6512232d203da680a70d4d36
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9146
Reviewed-by: humdinger humdinger <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Andrew Lindesay <[email protected]>
2025-05-03 00:48:01 +00:00
Augustin Cavalier 5fccac6671 kernel/vm: Print the cache on assertion failure in VMAnonymousCache::Commit().
Should help with diagnosing #19541.
2025-05-01 12:40:22 -04:00
Augustin Cavalier e702bf57be BQuery: Make SetFlags() behave like other Set..() methods & add documentation. 2025-05-01 12:36:43 -04:00
Augustin Cavalier 77bb094872 bootloader/bios_ia32: Automatically zero bios_regs on initialization.
Many places didn't zero them, so we'd put bogus data in those registers
during BIOS calls.
2025-05-01 12:27:16 -04:00
Augustin Cavalier 3479a4d9ae kernel/debug: Acquire the sOutputLock in debug_puts.
Should fix some more "Failed to acquire spinlock for a long time"
when onscreen paging is enabled.
2025-05-01 12:23:45 -04:00
PulkoMandy 813b97308a renice: Fix unused variable warning
Change-Id: Idc83ea2237ae878a52a951d77491536c384af38c
2025-05-01 11:50:57 +02:00
Augustin Cavalier d0e504d5bd Tracker: Don't bail out if there are no directory filters for a query.
Fixes non-directory-filtered queries after the earlier refactor
to how they work (hrev58845).

Also don't bother writing an empty message if there are no
directory filters, and remove any attribute that does exist.
2025-04-30 17:28:48 -04:00
Augustin Cavalier 218e7ce1be Tracker: Use B_QUERY_WATCH_ALL to avoid watching every single node.
Similar to the use of B_WATCH_CHILDREN for directories.
Following the preceding commits, this seems to be working well.
2025-04-30 17:20:20 -04:00
Augustin Cavalier d26ab46206 BQuery: Add SetFlags() method.
It can be used to set flags on the query, same as fs_open_query()'s
flags parameter.

fLive had 3 bytes of padding after it, so this doesn't break ABI.
2025-04-30 17:18:16 -04:00
Augustin Cavalier 7e740f61ac kernel & file_systems: Overhaul query attribute change notifications.
* Introduce notify_query_entry_moved to the fs_interface API.

   axeld added a hook to the query parser (then in BFS) in hrev34317
   to directly handle moves/renames, but just sent notifications for
   it as B_ENTRY_REMOVED + B_ENTRY_CREATED (which is in fact the same
   exact thing BeOS R5 did, I tested). We need to preserve that ABI/API,
   unless flags that didn't exist on BeOS R5 are set.

 * Rework notify_query_attr_changed to notify_query_attribute_changed.
   This method is Haiku-specific (it was added in hrev39131), but it
   wasn't very useful: it only sent the name of the file, not the name
   of the attribute that changed.

   It now sends the name of the attribute along with an "int32 cause",
   same as notify_attribute_changed does.

 * Rename the private flag B_ATTR_CHANGE_NOTIFICATION to B_QUERY_WATCH_ALL.
   This better describes what it does (it's analogous to the B_WATCH_ALL
   node_monitor flag). Probably we should make it public at some point...
   (although probably at a lower value.)

 * Overhaul QueryParser notifications logic to implement WATCH_ALL
   properly, make use of the new and improved notification methods,
   and to deduplify some logic.

This makes it possible to use queries with B_QUERY_WATCH_ALL
in a similar fashion to watching a directory node with B_WATCH_CHILDREN,
avoiding the need to watch every single node individually.
2025-04-30 17:12:49 -04:00
Augustin Cavalier 7998bc4204 BFS: Don't send duplicate attribute change notifications to queries on renames.
LiveUpdateRenameMove() sends create/remove notifications, so we
don't want to send duplicate ones in the LiveUpdate() hook.
2025-04-30 16:50:08 -04:00
Augustin Cavalier 915d8fbe17 tests/live_query: Fix the build.
Useful for testing query notifications behavior on Haiku
and BeOS R5.
2025-04-30 16:47:59 -04:00
Augustin Cavalier fec93ebfdd leak_analyser: Ignore anything allocated in __initialize_locale_kit.
That memory is intentionally never freed.
2025-04-30 13:48:18 -04:00