Fixes a small, hard-to-see bug that occurs when pasting text into
Icon-O-Matic. Before when pasting, for example, an "O" into IOM, the
"O" would not be completely symmetrical. There would be an extra point
on one of its sides. Now that point is gone.
Also fixes paths not being closed when they should be. Back to the "O"
example, one of the two paths that make up the "O" would be open. Now
both paths are closed.
Also determines whether a point should be connected or disconnected
based on whether the control points and the vertices lie on a straight
line. (If a point is marked as connected, the control points and the
vertex are constrained to lie on the same line.)
Change-Id: I0cb9f878ac7887640288073ca253de35b3937f3b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6841
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
In non editable mode, BTextView computes a preferred size that just fits
the current text. This did not take into account the insets from
SetInsets, so, when these are used, the resulting view size was too
small.
Additionally, avoid calling _Refresh that has two problems: it needs the
view to already be attached to a window, and it does a lot of things we
don't really need here: recomputing scrollbars, clearing the empty space
below the text to avoid flickering, and so on. We just need to recompute
fTextRect according to the suggested width, to do that, it is enough to
call _RecalculateLineBreaks instead.
Finally, also restore the text rect at the end of the method, since it
is not actually resizing the view, it is very unexpected that it changes
the text rect. This is not perfect, as the line breaks from
_RecalculateLineBreaks are not undone. But, since the next step is
probably to resize the view according to the computed width/height, this
will be sorted out at that time. If this proves to be a problem, we can
add a second call to _RecalculateLineBreaks after restoing the original
text rect, or refactor _RelcalculateLineBreaks so that it can return the
new height without actually changing the lines.
Change-Id: Ie2fa60c1b2314c8a3346d03ab3ff6843aebaf3dc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6845
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
This data comes from the PNP registry, where deprecated entries
have "DO NOT USE". But those deprecated entries were often once used
in actual products, and we don't want to display "DO NOT USE" for them.
So remove such text, and replace it with the actual vendor name in a few places.
gcc warns "writing 4 bytes into a region of size 0"
on ARM64 (-march=armv8.1-a -mno-outline-atomics)
if it thinks fTeam can be null in atomic_or.
Change-Id: I44c88dadf0cee6e3e54d2baaf0453ae70aa1f3c1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6838
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
This is the case, for example, for the "out of memory for command execution"
message.
Change-Id: I0951a91c7a9fcdd1730a0441d7fac0eb6e608615
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6843
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Improves the errors that are given to the user when exporting to an
HVIF file failed. Examples of errors improved include errors related to
having too many shapes, too many paths, or too many points in a path.
Also changes the icon shown in the alert box from an info icon to an
error icon.
Fixes#13978
Change-Id: I12a08e9857a95bd4d41da029320fa6f8182c3aa5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6837
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Previously, the window could not go any smaller than the current size
after some changes were made to the icon such as adding a style.
Fixes#4711
Also cleans up some code style.
Change-Id: I4e7af98ac8afbea28a46d81b9de7aba6fc6c894a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6836
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: humdinger humdinger <humdinger@mailbox.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Implemented `UnixBufferQueue::SetCapacity` so that `setsockopt`
with `SO_RCVBUF` will not always return an error.
Change-Id: I2d9be84633f84474fac64b379e9f89ef2751a094
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6816
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
on Pentium Silver, loading the microcode on the boot cpu also updates the other ones.
Change-Id: Ifbd767e7d73fdbc8ae2bf0740fcce523e500de1b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6806
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Upon further investigation, the global heap lock should actually
not need to be reset, but the process heap lock will.
Change-Id: Id1fd91cc0e7acecd5b4fd76cb82d4ed2ae3900ad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6777
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Nice to have its own icon (albeit a bit simplistic) instead of the
generic supertype text icon, and a description text.
Draft mails are created by the Mail app when saving. They don't yet
have any MAIL:* attributes.
Change-Id: I775950ea934eafc19c8d57e0e45451c8ab542234
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6797
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Use string_for_size() to get all filesize symbols and add a translation
comment when we have to shorten "bytes" to "B" as it's not obvious if
you just see "%lld B" at Pootle.
Remove no longer needed kSizeFormats[].
Change-Id: I85defd941a2d777d6032732fcfdd5e1fa91e08ac
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6776
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
This disables -Werror for the use of old GCC extensions listed here:
https://gcc.gnu.org/onlinedocs/gcc/Deprecated-Features.html
We do not apparently use any of those anymore (if we ever did). I think
this was accidentally enabled at the same time as
deprecated-declarations (which we still need, for example because we
still have some uses of auto_ptr).
Change-Id: I147276b42d9d066df56e8b135bc8fd885dc937a7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6798
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
The main motivator is the update to GCC 13. As part of this, some of the other
dependencies have been updated as well.
Newly introduced:
- gawk on x68_64 (new dependency of texinfo)
- libjx (new dependency of haikuwebkit)
- openexr30 (new indirect dependency of haikuwebkit)
- brotli (new indirect dependency of haikuwebkit)
On x86_gcc2, some packages have switched to the modern GCC version:
- diffutils
- findutils
- libpsl
- tcpdump
Change-Id: Ic617b5b4af9eb34c0d28259a3c0ddbcc33f98a5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6772
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
The per-heap locks are reinitialized already by the routine which
invokes this one, but this global lock was previously missed.
May fix a deadlock reported by trungnt2910 to happen in the .NET port.
* If we received a wait status, always return with it.
* Only count those entries for which we set the wait-status as
having been notified.
In conjunction with the prior commit, this fixes some rare deadlocks
that could occur with timeouts or signals.
It turns out this code actually is possible to trigger, e.g. using
Git checkouts, where EINTR due to signals happens quite often.
However, even with this commit, it still does not work quite right,
due to an oversight in condition-variable notify accounting. That
will be addressed in the next commit.
Once B_EVENT_INVALID has been set, the select routine is free to
delete the select_info at any time. We therefore cannot access
the "next" pointer after notify_select_events returns.
May fix a KDL seen by trungnt2910.
The dequeue routine expects that if B_EVENT_INVALID is set,
it is free to delete the object. So we must only set it with
the lock held, so that by the time the dequeue routine sees it,
we will be done with the event.
This commit replaces the custom implementation of message passing with
BLooper.
This commit does not fully transition the code to the BLooper paradigm.
WaitForEvent still exists, when, ideally, message passing should be
used to notify the waiting class that the results are ready.
Change-Id: Id223b9fc0ac1aa9a5a5aeb4af63da04f2cc7574b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6400
Reviewed-by: John Scipione <jscipione@gmail.com>
Reviewed-by: Rene Gollent <rene@gollent.com>
1. Set fShutdownRead & fShutdownWrite. This is necessary
because in Send(), there is a lock-unlock dance between the
source and target sockets which could potentially race with
some other thread closing the socket. The "shutdown" state
is checked before actually writing, and so we need to set it
here. Otherwise, the other thread could allocate a new receive
FIFO for us, which we do not want.
2. Don't return early when unbinding, but only if there's an
error (there shouldn't be.)
3. Merely ASSERT() in Free() that closing was already done
and nothing remains to be deallocated.
Should fix#18535.
unix_dgram_test still passes.
When the select/deselect API consumers invoke deselect(), they
expect that when this function returns, no further references to
the select_infos will remain and they can be safely deleted.
In order for that to be true, we cannot remove the select_infos from
the list in one step and deselect them in another; we must do both
without releasing the lock in the middle.
Should hopefully fix a rare KDL seen while testing .NET and
the new event_queue.
* Check fFirst/fLast instead of previous/next. Avoids
list corruption when trying to remove already-removed
elements, instead will cause null-dereference KDL.
* Always set next/previous to NULL even when DEBUG is not
enabled.
- Follow POSIX recommendations (even if other parts of the output don't match)
- If the mountpoint path is long, don't shift the other columns
Change-Id: I0ebfa2d6dca34792da8c3a26d996271298e0e65a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6380
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Report connected status to the socket module. Otherwise, operations
like `getpeername` would not work correctly.
Fixes#18534.
Change-Id: I99d047f0d7b4d442cc2b3ea9222b0d89d216c1ae
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6719
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>