* Should fix#14346. Uploaded executable there doesn't work anymore,
but this patch is prepared for case in #16040, and fixes
#16680 too.
* The issue is that if lambda parameters use an alias, this alias
has that lambda as a parent. Specifically the compiler generates
operator() subprogram, Debugger tries to resolve types for its
parameters, but at the same time it is a parent namespace for
those types.
* Call chain: operator()( -> type 1 -> namespace: operator()( ->
type 1 -> namespace: operator()( -> ...
Change-Id: I7aad150a8d9de4f0c01ae0c1db5e486416b72112
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3824
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
The code paths for creating a new partition and editing an existing one
are more mixed together than I thought:
- CreateParametersPanel reuses a method from ChangeParametersPanel which
I had modified.
- In the storage kit, the code to create the parameter editor is also
shared between the two.
The problem is that when creating a partition, we have only the parent
BPartition. When modifying parameters, we have the child, and we need
to get some things from the child (the current parameters), and some
from the parent (the parameter editor).
Fixes#16859.
Change-Id: I5978386978c79a351e94c098c065fd43c422eb51
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3822
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
It is hard to know what is wrong otherwise.
Change-Id: I47658502221dfd7f320ae873cc92f683d7ae3548
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3821
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
BOOT_VOLUME_BOOTED_FROM_IMAGE is for booting from floppy images
(or CD equivalent) where you can't provide all details.
BOOT_METHOD_CD is also for when all you know that it is a "disc".
UEFI can always give partition offset and checksum, so we can
use BOOT_METHOD_HARD_DISK directly.
Change-Id: Iede9beef2f00eadd7883be0a739caf4eb11969c1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3820
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
a protection_max attribute is added in VMArea.
a read-only opened file already can't be mapped shared read-write at the moment,
but can later be changed to read-write with mprotect() or set_area_protection().
When creating the VMArea, the actual maximum protection is stored in the area,
so that it can be checked when needed.
this fixes a VM TODO.
Change-Id: I33b144c192034eeb059f1dede5dbef5af947280d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3804
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
When booting from floppy image (BOOT_VOLUME_BOOTED_FROM_IMAGE)
we don't know the partition offset, and the number of partitions
are different for 32 bit and 64 bit anyboot cds. So don't check
for number of partitions.
This should only happen when BOOT_VOLUME_BOOTED_FROM_IMAGE
is set. Its intention is to signal if boot was from a floppy
image, so most boot platforms should not set it. It seems they
do, that probably needs a fix of its own.
Change-Id: I6b60a997b72b9928555840358257e15ff417fd42
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3819
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
UnixEndpoint::Receivable(): EOF means there is nothing left to read, and
the shutdown happened on the read side or the write side.
also fix x86_64 build with trace
Change-Id: I54c806f0b900591c3d441240b8f6768dfb756bad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3808
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
also use user_memcpy in usb_midi_write().
confirmed that it fixes#16856, thanks nephele.
Change-Id: I548cd2bd5cf44f7da078745fe403cf131c4cc4b0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3806
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Fixes#15983.
Added left-click support to the existing function that pops up the context
menu for copying characters. Instead of menu options, put a large version
of the currently-selected character in the popup on left-click. The popup
character is 2.5 times as large as the current font size, because that
seemed nicer than 2 times.
Right-click functionality is unchanged.
Change-Id: I3b64fff3cafc02e2c54e34db6e58461b4e08b3b9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2832
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
* Operators for Less than/before and Greater than/After were incorrectly set to <= and =>,
now corrected to < and >
* When query type is set to By attribute and user changes Filetype, corrected the update of attributes
Before this change, attributes were updated according to previous filetype
Change-Id: I7e02af9cb667c4db2c0efd8fa0da8b2b0c4b9ddf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2990
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
- Allows applications to be resized without the window contents resizing with the window frame.
- Due to the nature of out-of-tree decorators using private APIs, this will require all pre-existing decorators to be rebuilt
- Newer decorators won't work on older versions of Haiku...
- Also has some formatting with license headers.
- Fixes#2724
Change-Id: Id0b45e7bbc0b636e6dffbd396eb584bf348b5296
Reviewed-on: https://review.haiku-os.org/c/haiku/+/344
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jacob Secunda <secundaja@gmail.com>
It is a bit unorthodox, and we expect a number on how well you can
handle the partition.
Change-Id: Ie1b5d4e0a8e2411f9782957d7f124756f992a086
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3805
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
this is a widely supported non-standard flag for fopen.
Change-Id: I58bae7535cfdb7dae419534179fe2e6256ec8d35
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3801
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
The standardized version of readv() and writev() take an int as the third
parameter. Arguably a size_t makes more sense, but the standardization bodies
decided otherwise.
The non-standard functions of readv_pos() and writev_pos() have been updated
for consistency. The corresponding _kern_readv() and _kern_writev() internal
functions continue to take the size_t parameter.
The ABI will not change, even though on 64 bit machines the size of the count
parameter will change from 8 to 4 bytes.
The actual use will be slightly different. Like with the size_t argument type,
it will not be possible to give a count lower than 0. If the value is less than
0, then the B_BAD_VALUE/EINVAL error will be set.
Change-Id: I949c8ed67dbc0b4e209768cbdee554c929fc242e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3770
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
I think this bug was introduced when modifying the code to handle
multiple slots. It would result in slots after the first two to use
incorrect bar offsets.
Should fix one of the problems seen in #16778.
Implement the needed parts in both the userland add-on (loaded in
DriveSetup) and the kernel side one (used by disk system manager in the
kernel).
This allows changing the active partition in DriveSetup.
Change-Id: Ia65768b5f8f11d626ef24621ae7735723dcbc39d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3771
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
When editing a partition parameters, we want to get the editor from the
parent partition. This will be the editor used to set the active
partition on Intel partition map, for example. The code testing if this
is supported and the code to apply the parameters did this, but the code
to get the parameter editor didn't.
Fixes the remaining part of #11641.
Change-Id: I25a6cf11fe315b8f6e118529f2395816101b7fe1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3766
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Just ask the partition if its parameters can be changed, instead of
trying to guess.
Now the menu is always disabled. This is because none of our
partitioning systems actually allow changing any of the parameters of an
already created partition (they don't enable B_DISK_SYSTEM_SUPPORTS_SETTING_PARAMETERS).
Fixes#11641 (but we should implement editing parameters in the intel
partitionning system to set the active partition).
Change-Id: I242e7f73c4188824ba0e3984c0d97172da84e9a7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3765
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
- Replace the popup menu with a BOptionPopUp to simplify the code
- Remove an unused menu to select "warp mode"
- The focus mode is not stored in the mouse settings file
(config/settings_Mouse_settings), it is in another file
(config/settings/system/app_server/mouse). This file is not read or
written directly by mouse preferences, but we get the settings by
asking app_server. However, the code to get these was missing in one
place, resulting in these settings not being correctly initialized.
Fixes#16524
Change-Id: Ia1efc235c9d1a5408e3c6abc2526da7a0a639fa4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3796
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Should fix the remaining part of #16778
Change-Id: Ia148f4bde095d33752df788b8f7911ee9cf44c61
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3773
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Found some bugs while testing different possible cases of Extent based
directories (1 extentmap case). Also did some refactoring.
Change-Id: Icb3b6e21de100c1bee93779c419bb2e86c694ae6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3118
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Node directories can now be read. With this, extent directories are
complete.
Change-Id: Ic42c8464e810137cff4946e8c975edc121daaa4f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3045
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Do the final installation operations for all the packages in the
/system/packages directory when the OS is booted for the first time.
This will run their post-install scripts, create users, groups and generate
settings files (marked with a package version attribute). Previously we just
ran all the shell scripts found in the /system/boot/post-install directory
(don't do that as much now).
Fixes bug #14382
This patch has simpler code flow in CommitTransactionHandler::_ApplyChanges
Tested on 32 and 64 bit systems. Once it's official, need to remove the
open_ssh redundant post-install script that creates users etc. from HaikuPorts.
Now we can notice bugs like package version attributes on settings files aren't
fully working. :-)
Didn't remove special case for add_catalog_entry_attributes.sh since it
still does stuff that the build system doesn't do. Might be able to add
that script as part of the Haiku.hpkg. See change 3751 for removing it,
https://review.haiku-os.org/c/haiku/+/3751
Change-Id: I3807b78042fdb70e5a79eca2e2a45816ece0236f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2342
Reviewed-by: Alexander G. M. Smith <agmsmith@ncf.ca>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Add checks for value of 'size', since FlattenedSize() may return
negative value (B_NO_INIT).
Pointed out by Clang Static Analyzer.
Change-Id: I68176ee47076512a0b96539f9986ac5edbb587af
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3772
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Updates BNumberFormat to be able to format
percentages. Also re-introduces some unit
tests and updates the BNumberFormat ones.
This doesn't actually fix#16312 as the
defaults for percentage formatting don't seem
to track the selected language, but goes part
way there.
Related to #16312
Change-Id: Id6ddf426ce5571f4e8513c0eb1663cf42ac53cb1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3767
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
The invalidation logic for when packages are
added or removed from this view was broken. The
new approach involves demarcating the mutation
of the data with a begin operation and
terminating it with an end operation with the
view invalidation happening in the end operation.
Resolves#16260
Change-Id: I012610c72714323cc2f7471ad05cc758d9127ef0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3764
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>