Commit Graph

62126 Commits

Author SHA1 Message Date
Adrien Destugues
5f51a74f1a Build fix.
Some code in a just merged patch needs another one that's still being
discussed on Gerrit. Extract just the parts we need to get things
building again.
2020-12-02 20:05:20 +01:00
X512
60d3078585 app_server memory management fixes: use BReference
Use BReference for more automated reference counting in app_server,
fixing some use-after-free and other problems.

Extracted from https://review.haiku-os.org/c/haiku/+/2695

Change-Id: I141bb248229405896b29feff3338447f7257b0b4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3175
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-12-02 17:59:06 +00:00
John Scipione
30ecf636e0 Tracker: Scroll text to beginning on edit name
... so that the full file name is shown.

Center the file name in the edit box a bit better, the edit box is still
off compared to the non-editable file name by a pixel sometimes.

Use be_plain_font instead of getting the font from the PoseView since
the PoseView font is set to be_plain_font.

Fixes #16476

Change-Id: Ibda9341593163cdde898a83c98bf5ccea37126be
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3399
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-12-02 17:58:47 +00:00
Jérôme Duval
b943b993c7 freebsd_network: Use user_memcpy() for ETHER_ADDMULTI/ETHER_REMMULTI
Change-Id: Id0a7e50f9ae38bff42faf1d6c4a62f702347bda3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3446
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-12-02 07:40:16 +00:00
Máximo Castañeda
a1c9aa9d90 Get a fallback font for each missing character
Make the glyph layout engine look for a suitable font fallback for each
missing character, instead of using the first one found for all of them.

Solves #16404, #16213, maybe other garbled text issues.

Does not solve similar issues of getting slightly different positions and
widths for a whole string than for the sum of its parts due to subpixel
rendering (cf #15007 comment 2).

Change-Id: I40664e32c8ecd5f09e10aa7a60fcdaec230471b6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3273
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-12-01 11:45:27 +00:00
Mitsunori YOSHIDA
bca2f73564 nfs: Fix panic occurs when creating a file
Fix an issue #5496 where panic occurs when creating a file with nfs v2
due to the newly generated vnode of the file is not published
and is still busy.

Change-Id: I490a10d4c7de6c87e309a21da575d6cc1a521974
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3436
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-12-01 07:23:55 +00:00
Fredrik Holmqvist
cb26d04e81 arm: kernel link cleanup and fixes
* Removes several previous hacks, and makes kernel loading
  by our bootloader more reliable.
* Long list of "Couldn't find both text and data" errors
  no gone in our bootloader as it loads our kernel

Change-Id: Ic9f5ed44975d41fb22d7ab19536261432abe84ba
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3444
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-30 22:08:32 +00:00
Máximo Castañeda
64fc5a66b1 DefaultMediaTheme: fix Slider scale
Values are using a scale of 1000, but limits are set 0..100. Very
visible in media preferencies when using balance controls for stereo
connections in the mixer: the control is shown full right at first and
the moment you touch it and the gain is updated, you only get sound from
the left channel.

Probably the root cause of #15836 and #16070.

Change-Id: I31d3b6b11a57ca99a1cc8373d9fb003f21b192b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3445
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-30 20:06:16 +00:00
Jérôme Duval
b6e85f802d ipv4 & ipv6: remove_trailer() uses a positive size as parameter
Change-Id: Id7d009cfee7727afb8267703c22c467e5f636070
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3438
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-30 15:02:46 +00:00
Pascal Abresch
7377c39855 Tracker: make desktop color selection try user color first
Change-Id: I47392bdafe8ecf1996886fd0a8324a114f4524fd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3407
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-11-29 16:23:59 +00:00
Pascal Abresch
7866835b41 Tracker: remove desktop check for text colors in poseview
Change-Id: I4db3cd5525242314bd7177dcdd25cd8ec0aa1f7f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3406
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: John Scipione <jscipione@gmail.com>
2020-11-29 16:23:59 +00:00
Jaidyn Ann
516510a226 MediaPlayer: No automatic playlist sorting, sort through right-click drag
Disable automatic sorting of items dragged onto the playlist. Instead,
offer sorting of new items by a submenu from a right-click drag.

Change-Id: I8b7e241eb9a6335cdcebfc51267e5484f762e700
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3414
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-28 11:29:38 +00:00
Autocomitter
59bd13bc5e Update translations from Pootle 2020-11-28 08:44:27 +00:00
Murai Takashi
0404495f3b tracker: Fix PVS V595
Add NULL check for 'ContainerWindow()', since it might return NULL.

Change-Id: I0a9e7243c6d23be7559331dcd72e0675eb44809e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2161
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-27 07:19:56 +00:00
Jérôme Duval
c144c17f4f ipv4: fix 64-bit trace warnings
Change-Id: I4124c4fc5f4cf54369eeb08ee9d1fa70600a94e5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3421
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-26 07:37:29 +00:00
Jérôme Duval
6e3ed1d254 ipv4: restrict multicast socket options to raw und datagram streams
Change-Id: Id55cfa0266ba6754340bd1ce43e8016579bd7c45
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3420
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-26 07:37:29 +00:00
Jérôme Duval
bd337347f2 ipv4: add getsockopt IP_MULTICAST_IF
also fix setsockopt

Change-Id: Idb8fafbe7aa9931af82ebccdc4d2e487f9c0eeb1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3419
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-26 07:37:29 +00:00
Jérôme Duval
9e3513fc30 ipv4: IP_ADD_MEMBERSHIP twice should return EADDRINUSE
also IP_ADD_SOURCE_MEMBERSHIP

Change-Id: Icc9af4fc7ffe6457ca968fad3fba46f0942a9e3f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3418
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-26 07:37:29 +00:00
Jérôme Duval
6b1c3825c5 ipv4: add option for multicast_loopback
no effect, multicast is disabled anyway.

Change-Id: Ic7ca0d169dae5eb7cd34a658908eed5d0d149d08
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3417
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-26 07:37:29 +00:00
Pascal Abresch
ff21b4c370 HaikuControlLook: don't modify menu color before applying it
Change-Id: I31838d4c17d4616c2c166197596a93bf51785677
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3410
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-11-26 07:35:33 +00:00
John Scipione
1897036191 BTextView: ensure text rect width and height is > 0
Helps wth #16476 #16568

Change-Id: Idc8d399cf69776d26e492f568c9ef83bcd7a6686
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3413
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-26 07:27:19 +00:00
Alexander von Gluck IV
49e2b1f420 platform/efi: Fix 'narrowing width' error under clang
Change-Id: I84d7fea03868aadd50ff03a79d7769bff56c84be
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3416
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2020-11-25 19:33:53 +00:00
Alexander von Gluck IV
f566cf181a file_systems/nfs: Fix SMAP violations
* Try to return relevant errors when we can.
* The style on these needs cleaned up badly.
* I don't want the fix to be lost in style changes.

Change-Id: I8a1661385fbeb8eec86a2c15828b449980050a78
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3386
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-11-25 19:32:33 +00:00
Humdinger
9d84226fcd Installer: Improved alert text, consistent use of "Haiku User Guide"
Point specifically to the SoftwareUpdater topic of the Haiku User Guide
to make the hint more useful.

Always use consistent spelling: "Haiku User Guide"

Translated the German User Guide package info.

Change-Id: I8f3b2a5a3f27caf9b5eea41a1a7a86c2e91e668a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3412
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
2020-11-25 18:14:29 +00:00
Máximo Castañeda
8c78892580 BFileGameSound: don't copy garbage after track end
Check for the end of track, as the stream is repositioned on the first
frame, the start of which we were copying to the buffer if there was
space left, whether we were looping or not.

Solves #16592

Change-Id: Ic49d1776577b71a4451775876597b9c9003e1d35
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3411
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-24 14:02:30 +00:00
Jérôme Duval
15b8d49dba ipv4: have IP_MULTICAST_TTL accept 1-byte buffers
this is a common length for this socket option. also denies values greater als 255.

Change-Id: I3d480444d655c41e76d3bbc6625f72c1c4eb3808
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3409
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-23 08:07:29 +00:00
Adrien Destugues
bc8445142d BSecureSocket: use openssl's default paths for certificates.
It is confusing to use different sets of certificates for BSecureSocket
based apps and ones using openssl directly. So, use the defaults in
BSecureSocket.

OpenSSL was modified to keep the user certificates in non-packaged so
this does not change the behavior for native apps (needs openssl 1.1.1g-3)

Change-Id: Ic398eec5efa9d036c3b810b7a3bb7142bdeb2d46
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3394
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-22 19:19:20 +00:00
Jérôme Duval
c5ff1f14c6 syslog.h: add LOG_PRIMASK and LOG_PRI macros
Change-Id: I9ae0c3165cea831e329e49211ff738cbb89a65de
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3408
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-11-22 09:28:57 +00:00
Autocomitter
8ef2ce074c Update translations from Pootle 2020-11-21 08:47:36 +00:00
X512
be3fde6d02 app_server: perform NULL check before use
Fixes #16610.

Change-Id: Ic377a2faef7279f607298b3b80bc44bc1c6aae36
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3401
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
2020-11-20 18:24:48 +00:00
Jérôme Duval
2982d9819f fcntl.h: define O_DIRECT directly
coreutils wants to undefine O_NOCACHE, this shouldn't affect O_DIRECT though.

Change-Id: Id00316a78eb91b2c7f692bb46eca65b3a7983c6f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3398
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-20 18:23:35 +00:00
Fredrik Holmqvist
e6e0db9ef4 Rewrite allocated regions, remove mmu_free
mmu_free was only used for ACPI and only set a released flag
in the region. This released flag was never checked anywhere.

platform_free_region removes region from linked list now.
There are a lot of calls to it, so it should save some mem and make
memory layout cleaner.

Compiles on boots on AMD64
Compiles on ARM and loads kernel, but can't start it, since we havn't
setup the mmap with proper virtual addresses (with some other fixes to
ld-script and ELF32 loader EFI code.

Change-Id: Icfe871fa400b49f19e7ca1dbb9e1561309b21a22
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3403
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-19 19:09:38 +00:00
Fredrik Holmqvist
7b9ad03e70 Remove mmu allocation and free
EFI should have ACPI regions mapped, and kernel does its own mapping

Change-Id: I12a1ce625740dfe9751f2907ac462ef112b22645
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3402
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-19 19:09:38 +00:00
Murai Takashi
cb5156f081 LayoutBuilder.h: Fix use after free
Fix 'item' is used after delete.
Pointed out by Clang Static Analyzer.

Change-Id: I8eca3084c97b37015a2da1b96119a458d4eb9aa7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3392
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: John Scipione <jscipione@gmail.com>
2020-11-19 07:17:29 +00:00
Adrien Destugues
a6c8647e0a Tracker: list item height must be an integer.
The item height is rounded to the nearest integer when drawing, but it
is also used to compute an item position:
position in pixels = item number * height

If the height is not an integer, this leads to a rounding error, and
depending on how the items are drawn, some of them are shifted up by a
pixel because of it.

The fix is to round up the item height when it is first computed, and
then make all computations keeping integer values.

Fixes #16377.
2020-11-18 22:36:49 +01:00
roired
c25b83c23c Include the X-Bows Nature keyboard layout into the Jamfile inside src/data/keyboard_layouts
Change-Id: Id2ae7c44131c447c9d1b99cb6d9f2c1352672d5e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3237
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 11:29:45 +00:00
Jérôme Duval
a1999d3b8a POSIX: add tcsetsid()
Change-Id: Ia8f41e417379dcaf4f976933cf91bb2de157bc72
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3376
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:53:28 +00:00
Jérôme Duval
e04970ad6f POSIX: add utmpx.h and function stubs
OpenJDK 14 assumes symbols and headers are available.

Change-Id: I21038e92afcfd2000ee95712bce874afd29611b6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3371
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:46:30 +00:00
Murai Takashi
e497df64de file_systems/userlandfs: Fix -Wnonnull-compare
In String::SetTo(), strnlen() is called only when *str is not NULL.
This leads to "-Wnonnull-compare" warning at line 12.
So, use system's strnlen() to fix warning.

Change-Id: I55098af4e2c62ebcf3b6105b7b8f186eebf28edf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3363
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:38:39 +00:00
Murai Takashi
064bd70dcf bin/network/arp: Fix -Wformat-security
Change-Id: Ia9ceb05b555fad32bed66ad232cc1b08a1b4a881
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3369
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:25:05 +00:00
Murai Takashi
0e1b1021ea bin/multiuser: Fix -Wformat-secrity
Change-Id: Iee07090f57973d8fc687cd7d9974c7ceb4517571
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3368
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:20:36 +00:00
roired
3216a85694 Move X-Bows keyboard layout file to the correct place
Change-Id: I7ddf11a4a4ae0aa04900f97678430d9330888808
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3238
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-17 07:19:25 +00:00
X512
529fedc75c Interface kit: Resize menu if invalidated.
Change-Id: I45a966b13be6953431a1176378e4ddc10920916b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2325
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: John Scipione <jscipione@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: X512 <danger_mail@list.ru>
2020-11-16 15:09:34 +00:00
Jérôme Duval
602051e8eb ext2: implement FIOSEEKDATA and FIOSEEKHOLE ioctl commands
Change-Id: I5f267620e904fe7bb294a4864a8ed017d27a7e68
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3387
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-16 10:21:55 +00:00
Niels Sascha Reedijk
dfb36b35b9 Installer: fix 'clean install' over existing installation.
Whenever the target of an installation is a partition that is not empty, the
Installer prompts the user whether they would like to continue with a 'clean
installation', i.e. an installation that clears out the system folder,
excluding the settings, and cleanly installs the assets in the source's
system folder. At all other locations the source data is merged, meaning that
the source version is copied in place.

The logic that clears out the existing /system/ directory stopped working. This
change moves that logic from the copying process, to where it is run before any
file is copied. The added advantage is that the system folder is now properly
cleaned up, also stray files under the system folder will be removed.

This change does not change the logic of what constitutes a 'clean install'.
There are arguments to be made that it should potentially also drop the
settings files, as well as clean out the user's home folder for stray
add-ons, but that really is different functionality, and at this points I
think the requirements for that are not yet fleshed out.

The change was manually tested.

Fixes #16092

Change-Id: Ia6781c8d2330ba336b3921f9a980b5e31c48a2ec
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3140
Reviewed-by: Andrew Lindesay <apl@lindesay.co.nz>
2020-11-16 09:02:27 +00:00
Andrew Lindesay
027d608682 HaikuDepot: LRU Cache for Icons
Only keep a fixed number of icons in memory at once.

Completes To #15370

Change-Id: I23e3a4fa7559894034f45afb3b536910ea037078
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3367
Reviewed-by: Rene Gollent <rene@gollent.com>
2020-11-15 20:16:14 +00:00
Murai Takashi
55d6d58d9f mail_daemon/inbound_protocols/imap: Fix dynamic exception specifications
Remove dynamic exception specifications from Responce.c,
since Protocol::HandleResponse() handled exception handling
for ResponseParser::NextResponse() and Response::Parse().

Change-Id: I32e5cf976de765df2c8b5ca99eeaa80c57dbf254
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3384
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
2020-11-15 20:08:15 +00:00
Murai Takashi
6c016dc54a libnetapi: Fix use after free
Fix 'fImpl' is used after delete in BNetBuffer::operator=
(GetImpl() returns fImpl), when it is used with self assignment.
Pointed out by Clang Static Analyzer.

Change-Id: Ic80a4ce73879062581b9241f84a4340919d281b9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3393
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-11-15 20:05:58 +00:00
Alexander von Gluck IV
a756a8ad1b kernel/fs: On write, relax address check on 0 length and NULL ptr
* IEEE Std 1003.1-2017, read, write
* golang performs a write of 0 length with a NULL buffer to
  "create" an empty file. We return BAD_ADDRESS for this.
* If condition above occurs, continue as a length of 0 means
  we won't read the passed buffer.

Change-Id: I8718abb92f5865a7b6f4fb7f2b74f803497ebef0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3285
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-11-15 20:00:55 +00:00
X512
dad52bddc7 drivers/scsi_cd: set device name
Change-Id: I62b0a599ed2451a27069a2149ddc4e58384ed95f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3389
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-11-15 19:58:40 +00:00