Improve the mechanics for JSON parsing by reusing
text buffers during the parse.
Change-Id: I7fb2cae31e6558a5a0c63fd02e1fc6fec4f9e4b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7106
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
The keyboard is initialized after the mouse. When there is no mouse,
this timeout delays keyboard initialization noticeably (especially if
there is a mouse port multiplexer with several ports).
Change-Id: Icd4a7c28f6afca062d829df88bd15e88225d4bc0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7112
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Same logic as in the TCP protocol module.
This fixes a regression from hrev57383: curl now works
again. (Perhaps it shouldn't be called a "regression",
though, but instead an uncovered bug / missing feature.)
Fixes#18666.
Fixes the "bug" part of #18653 (however the flags still need to
actually be implemented.)
Change-Id: Icd296af8b409416317ba3d02735504729949fd08
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7109
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
after a0131eaae2884fdced27158c3d34732d1656aca9 mxcsr was possibly also incorrect.
fpu control and mxcsr will be restored with fxrstor/xrstor.
no need to clear pending exceptions on #MF
fix#18656 (and #18624 after reverting).
Change-Id: I7dd5e2e4610747c5b82abd6c67e302d264b4be92
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7104
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
As investigated and suggested by jackburton in ticket #14693:
outTranslator wasn't initialized correctly (due to type mismatch
on 64 bit platform).
Also set the image's file name as default in the save dialog.
Fixes#14693
Change-Id: I741e3616b935315a707ea3949a330d41d577fd91
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7102
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Besides the entry_ref to an existing Person file as argv, also
accept a BMessage containing values for attributes and set those
in the new window.
The specifier name in the BMessage needs to be the same as the
attribute name used by the People app, e.g. "META:email".
Needed to let the Mail app create a new Person file with the email
address already filled in.
Fixes#14766
Change-Id: I637200b08d5c1b7cf52d7cf3f56dab93ce1a6ec5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7085
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
If a Person file with the selected email address doesn't exist yet,
launch the People app with a BMessage "M_LAUNCH_PEOPLE" that triggers
the People app to create a new Person file.
The message includes "META:email" and "META:name" for email address
and contact name. The contact name may be empty, if it wasn't included
in the mail's from/to/cc etc. field.
Don't show error alert, if People was already running.
Fixes#14766
Change-Id: Id4f7ae50aa1ea283974f2fa067ac9e199f369db5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7084
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reduce the number of small reads into a file
for JSON parse by buffering the data.
Change-Id: Iae8030a72daec358968cd2edf5f95510194a2f68
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7096
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
This change will move the loading of packages' file size
to a latter phase as HaikuDepot starts up as a separate
step. This way it can only load sizing for those packages
which do not have a size from HaikuDepot Server -- which
should be very few. This gives a circa 10-15% performance
improvement on the phase where the local HPKR catalogue
of packages is populated.
Change-Id: I52055ecaa79f9819e70b469134e5b94636f02b13
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7095
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Doesn't remove the rating BFS attribute from the file, just sets it to "0".
ShowImage: Move "Ratings" menu into a new "Attributes" menu, similar to
MediaPlayer.
Change-Id: I831166d88be9d18f1d302a423aa43929b7a1b255
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7092
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
The rating now uses unicode symbol U+2BEA - "Star with Left Half Black": ⯪
for the odd rating values (ranging from 1 to 10 for up to 5 stars).
The other used symbols are still:
* U+2605 - "Black Star": ★
* U+2606 - "White Star": ☆
Fixes#12986
Change-Id: I1ea27db67131b071e827a05847595f88b6d9dcda
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7091
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Rene Gollent <rene@gollent.com>
* Moved "Use as background..." from "Image" to "File" menu.
"Image" holds items that affect the display of actual image
(rotate/flip). "Use as background..." doesn't.
* Move "Close" down above "Quit".
Change-Id: I23ddcc2cf03937322649ab289ef405f84c878dfb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7090
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Populate a new sub-menu with all applications that support the current
image's MIME type. Launch the chosen app with the image entry_ref as
B_REFS_RECEIVED message.
The sub-menu listing supporting apps is separated into apps supporting
the supertype ("image/" and full support (e.g. "image/png").
Add the new "Open with..." menu to the "File" menu and the context menu
of the image.
Most of the code was grabbed from the FileType prefs PreferredAppMenu,
therefore its copyright was copied and extended.
Change-Id: I0190cf4b78c59e429f4e67654665598340653c5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7072
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* also on x86 for simplicity.
* fixes#18624
* also makes x87 FPU data registers available for x87 floating instructions. EMMS is cheap.
see 25209d81f7
Change-Id: I5c1b399377102f3eb10bc6d7f7247afbaf6d8483
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7089
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
The debug_server sends MSG_DEBUG_THIS_TEAM but of course it doesn't
have a way to specify the internal interface pointer. We should thus
assume the local one is implied.
Fixes#18645, which is not a regression but has been the case since
the initial host-interface refactors years ago, apparently.
Change-Id: I48078232f154f2f8f7cdf28792d39ae58471ce19
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7074
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
possibly help with #15789:
I was testing virtual_block devices with dd, and noticed it didn't work with higher block sizes.
Indeed the driver was passing a list of single pages, very inefficient. To be remarked is that
the physical pages were reversed in memory, causing get_memory_map to provide a map of single pages.
What happens: dd fills up the buffer from 0 until the block size, causing soft faults for still unmapped
pages. Each fault maps a cleared physical page out of the clear page queue. This means that some page runs
are actually put reversed in the clear page queue, which this commit fixes.
Change-Id: I36395849c7f13086b44a1b284cc0c858d8c29f75
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7081
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
this fixes an assert when reading extents written in Haiku.
Change-Id: Iba2cc3b35ed6886db0749a0f50b24053def5aac3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7079
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* the target inode would still exist, unreferenced.
* also remove from entry_cache.
* this fixes fsck complaining about unreferenced inodes.
Change-Id: I4d48d6bf89bdd37d366da0ae4795e42bcc0532d9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7078
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* the problem appears after the directory has been splitted.
* this fixes fsck complaining about an invalid directory entry.
Change-Id: I1566a279fc6438cb735439be002c634882e5a83b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7077
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
To make it easier to understand what process
elements are taking a long time to run, a
small simple report is output as debug log
at completion of a process.
Change-Id: I09b93c494961e7abbbd22a3c58c64631f08025af
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7075
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
* Declare databridge buffer lengths in LocaleBackend.
* Use strcpy instead of strlcpy when writing to databridge buffers
(this is the first fix for #18598.)
* Check for overflows and error out when they happen.
* Verify that ICU actually knows the timezone in question
and fall back to GMT if it does not (this would also fix that crash.)
Fixes#18598.
Previous changes removed the ability to supply
control characters at the start and end of a
nickname; this change removes them from anywhere
in the nickname when supplied.
Change-Id: I0631fffa8aaf2c0e267c777892044c53faa4334e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7071
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
If the user happened to enter control characters into
their username when authenticating then the username
may cause problems later when communicating back to
the server. This is a hard problem to diagnose and
this commit will remove the problem.
Change-Id: Iad3c24f16cc6799ad8ddad634b8621a0aaadb921
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7067
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
PathTransformer keeps a reference to the VertexSource used (which can be
either another PathTransformer, or the base path for a shape). When a
shape is cloned, this should be retargetted to the new object in the
clone.
However, references are not settable, and so, what would happen instead
is the original (non-cloned) vertex source was reinitialized (through
the default implementation of the assignment operator) using data from
the clone, and the clone would still point to it. Then, if the original
object is deleted, the clone would point to freed memory.
To avoid this problem, replace the reference with a pointer (which can
be set to point elsewhere, as the code intended to do). To make sure
this does not happen again, make the VertexSource copy constructor and
assignment operator private, and deleted when the compiler supports
that.
Fixes#18577
Change-Id: I8870d9471c5064e922a84eff8447cbda783b13e6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7052
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Zardshard <0azrune6@zard.anonaddy.com>
The previous commits have cleaned all the remaining ones.
Change-Id: I6b12ba4f23779f3e2e4fd5a00c6acfaaeb50f4d6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6804
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Use avcodec_send_packet and avcodec_receive_frame as recommended in
ffmpeg documentation.
Change-Id: Ib9dc343a9f5cfbc50192158934e5e80c09a37fab
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6803
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Addresses #15418 without completely solving it.
At least for font sizes >= 11 points it works mostly. Buttons are
no longer cut off, though the summary page showing all partitions
is taller than necessary for > 3 partitions, esp. for smaller font
sizes.
Views aren't vertically centered at least.
Change-Id: Id6224b83f27510c9ed45e303f0b5dabf47af0574
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7062
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
AbstractSpinner inherits from BControl, so it should call BControl's virtual methods, not BView's.
Found by Andrea Anzani
Change-Id: If4c921d91a5095769d5f2da1832ad5bf4533becc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7066
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
The function used to be "not supported", but now it is implemented.
So, the comment about printing a "not supported" message for debugging
is obsolete and can be removed.
Change-Id: I2db26ef5a59e6e04bf903a29563d88d1d98fc303
While debugging some problems on the HaikuPorts build VMs, mmlr
noticed their clocks had an alarming amount of drift. This prompted
an investigation into TSC calibration mechanisms, and the discovery
that there is a VM-specific one which we did not implement.
This mechanism is more accurate than counting cycles on VMs where
cycles can be "stolen" (the probable cause of the aforementioned
clock drift.)
Tested in VMware (works out of the box) and on QEMU/KVM
(may need TSC frequency specified or a host with invariant TSC.)
Change-Id: I4ccfdb2e4e2621404ec9026e7106c02bf96faf18
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7063
Reviewed-by: waddlesplash <waddlesplash@gmail.com>