We were incorrectly reporting a B_IO_ERROR for these requests because we
could not read the content after the headers. There is no content in
these cases.
Add an unit test for both HEAD and 204 status, checking that there is no
content and the headers are correct.
Fixes#16885.
Change-Id: I98fefc5c604253bb2545b50395b7af9f8834def0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4142
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Update the package server so that it reports the
added and removed packages when it commits a
change so that clients are able to pickup and
act on the changes without iterating over all of
the packages.
Change-Id: I6feb52c34fc51a78e2282d8d5ca6cb6775b221ca
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4141
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Screen may be turned off if video card is not supported by firmware and boot
loader.
Change-Id: Ie60fc00da281ec3781084dd97466a68b885fde7b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4114
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
- This will fix page translation fault when accessing
static variables.
- Now with this patch, we made uart pl011 works for qemu.
Change-Id: I8eecc18ad05bd950768b49d9ed268c4c2a3baf25
Signed-off-by: Han Pengfei <pengphei@qq.com>
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4123
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: X512 <danger_mail@list.ru>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
This patch adds the functionality to read B+Trees based files.
It shares similarity with extent based file reading functionality. Just
the way the extents are read is different.
Change-Id: I9b7ebe20171a8860fdc35024f7018540248aed61
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3170
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
EFI System Partition was the last remaining holdout for mtools usage.
Change-Id: I988f82a2f4318f2f90ec1efb80f7ff5c8908aff7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4140
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Nothing really refers to libunwind anywhere in Haiku, so it's likely as good as gone.
Change-Id: I1b9a2e23558caa46211c81618295361748344441
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4128
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
The code allowed execution to continue as soon as the "command inhibit"
bit was cleared. This is incorrect: we need to wait for a command result
(either command complete, or timeout) to be available before continuing.
This should fix#17031.
Change-Id: I8f3fe60c2e47582b399952b19c05c6ed2161afd7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4121
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Change-Id: I854de44c1b31066dfa522b946cb04a5190f6b0b6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4113
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* Off-by-one error copying the string.
* As per the spec, return the buffer length for the string when passed a
null pointer and 0 length.
Fixes https://github.com/haikuports/haikuports/issues/5821
Change-Id: Ic421f26db00f9820c6a617375e39f7341cd5ebc1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4110
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
It cause per-byte access instead of 32 bit on GCC/riscv64 that breaks operation.
All fields are 32 bit so alignment is already fine and packing is not needed.
Change-Id: Ie96eac6615c9326e84608be1c667bc5d3600c508
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4117
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
This was based on the FreeBSD wi driver. The FreeBSD driver is removed
in FreeBSD 13. Most of the supported hardware was PC-Card, which we
never supported in the first place. All the devices, even the few
supported PCI ones, are restricted to 11Mbps Wifi, and the driver never
supported WPA. This makes this hardware largely irrelevant today.
The driver had already been removed from the build. This ocmmit just
deletes the sources.
Fixes#16942.
Unify the background processing in the
application to one system and refactor
the package actions. This won't fix
any specific current issues with this
area, but lays the ground for later
fixes.
Change-Id: I098b81e7afc4aeb883bddf1acfc01f7888134257
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3997
Reviewed-by: Andrew Lindesay <apl@lindesay.co.nz>
- New text/markdown MIME type was added according to IANA registry.
- MIME types gained new extensions that weren't previously included.
- Resource definition files will now open up with Pe by default.
- text/x-vcard was renamed to text/vcard, as it's now a registered IANA MIME type.
- text/x-source-code had its sniffing rules increased in priority,
so that it would get precedence over text/plain and its own sniffing rules.
Change-Id: I28af24de8c0e96ef39dfc67703a0884e8d4c842e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4109
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Fix part of #17023
* Update default server to "gnudb.gnudb.org:80".
* Add "/" to command footer to work with gnudb.
Change-Id: I363ca919d971e96ba27476a56ca06b4e8fa99171
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4112
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
There are 2 issues right now. One is that I have to give cat command the
entire file size for it to print the entire file. The second issue is
that I am getting segmentation fault for some reason, and it doesn't
even have to do with xfs_read().
For more info: https://review.haiku-os.org/c/haiku/+/3154
Change-Id: I8e3acd658730ed2339dabbd671820c409332f296
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3154
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
* Solves out of space issue building release images
Change-Id: I888836774732f65fde3574ef498b272d8285356f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4107
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
This resolves the confusion about the "url" field in repository
definition files. However it changes the identifier of repositories. It
seems to be a good idea to do this with a new release, as users will
need to switch to new repos anyway and can accept special instructions
at that time (we will include the instructions in the release notes).
The new format uses a tag: uri as specified in https://tools.ietf.org/html/rfc4151
The rationale for this is:
- We need a way to uniquely identify repositories
- We want anyone to be able to create a repository easily, with no
central registration, and in a way that does not results in accidental
conflicts. We do not want to be running a registry to grant people an
identifier for their repository.
- Backwards compatibility with existing repositories and software should be
preserved: some code and file formats in Haiku package tools expect or
expected the identifier to be parsable as a BUrl. Existing 3rd-party
repositories use an http or https URL as an identifier and may
continue to do so (changing the identifier of existing repositories is
not desirable)
- Forwards compatibility if we want to change this again later
- Optional: repository identifiers should be user readable.
The tag: URI resolves this in the following way:
- Backwards compatibility: it is still an URI, as the identifier
previously was.
- Forward compatibility: We can change to another URI scheme if we want to.
In fact, each repository can decide what type of URI they want to use,
"tag" is only a recommendation and put in use for the repos we
provide.
- Uniqueness + no centralization: the tag: URI specifies namespaces tied
to a domain name (which is already needed to host a repository) and a
date at which the domain is owned by the entity generating a tag. Inside
that namespace, they can do as they wish.
- User readability: the format is simple and text-based.
Other possible alternatives are:
- keeping the current solution of using http URLs. It has proven
confusing because the repository hosting may be moved or mirrored
while preserving the identifier. There is also work in progress to
distribute packages using other protocols (eg. IPFS).
- Using an uuid. This provides unique, decentralized identifiers, but
is not user-readable. Backwards compatibility can be provided by
wrapping the uuid into an "urn:uuid:" URI (see
https://www.itu.int/en/ITU-T/asn1/Pages/UUID/uuids.aspx).
- Using some other URI scheme such as "urn:oid:". I investigated some, but
found none that provide a decentralized namespacing solution (except
for "tag", of course).
- Using a custom URI scheme of our own. This would normally require declaring
it to the IANA (example: https://www.iana.org/assignments/uri-schemes/prov/apt
for Debian packages) in order to not make the internet more of a mess
than it already is. We would still need to define a way to generate
URIs that protects people from getting accidental conflicts. The
solution would probably be similar to what the "tag" URI scheme does, as
there doesn't seem to be many other ways to guarantee uniqueness in
(cyber)space and time without registration.
- Not using an URI scheme: in addition to the problems of a custom URI
scheme, this would break backwards compatibility (existing software
would not accept the new format) and forwards compatibility (without a
scheme in the identifier, it is hard to detect what it is supposed to
be if we change formats later on)
Change-Id: I970c23a546569994632c7bd570d11bdea95ba52e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4106
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
This reverts hrev54422.
I'm not sure what I was trying to fix with this change. The way the
media kit is currently designed, the list of supported formats
(including for reading) comes only from writer plugins. This means it is
impossible to have a decode-only plugin currently. And the list is
called "fWriterFileFormats" but in fact is the only list used to
implement get_next_file_formats, so it should contain all formats.
This current setup works for the ffmpeg plugin, but it should be
cleaned.
This fixes Youtube playback. The problem was simply that we were not
reporting support for any of the Youtube video formats anymore.
Unfortunately, the app_server crashes when playing Youtube videos are
still there.
Change-Id: Ie5025cd48e2ab23b616bad49eec1401331ffb0ed
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4103
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: Panagiotis Vasilopoulos <hello@alwayslivid.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Theorically we could define __STDC_NO_THREADS__ internally in GCC, but
threads.h probably will be added in the future, and the compiler won't
notice.
Using this stdc-predef.h header and including it in GCC would solve this
nicely, and saves us from hardcoding.
The header can eventually be removed when obsolete.
Change-Id: I29aa58686e3c45449dc63e02e5a9e13a960b9090
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4097
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Don't resize text view in FrameResized() if resizable, this is done
in _AutoResize() instead. Set text rect width to width of max line when
word-wrap is off. Text rect width shrinks to the width of the text
matching behavior of BeOS R5 and previous Haiku. This fixes Tracker
Edit name.
Limit max width to column width in list mode or 30em in icon mode.
Filter paste messages limiting to max width in Tracker Edit name.
General BTextView fixes:
As a consequence of the text rect shrinking to fit the text, adjust
highlighting to go at least to edge of the view even if text rect width
is narrower. Extend the invalidation area beyond text rect when
redrawing to include highlighted areas.
Text views behave properly when overflow occurs i.e. when you type
text off the end of the text view. The text is nudged over as you
type/scroll so that the previous text is visible. This sorta worked
before but now works better.
Fix text rect centering by replacing switch with
BLayoutUtils::AlignOnRect().
Coalesce consecutive draw calls when inserting and deleting text to
prevent flashing for example when resizing the window. Redraw text
when the text view scrolls fixing a bug I noticed in StyledEdit.
Workaround negative height Beezer bug.
Fixes#16642, #16476
Change-Id: I2d32d6039944d2dc3218ce4de71f2966cc98c866
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3642
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
POSIX defines this structure but specifies only two fields (which we
already implement). However, both the *BSD and Linux have agreed on
some more fields, which are often assumed to be there by applications.
The benefice of having compatibility fields is
greater as having to patch every other software at HaikuPorts.
Change-Id: Ie28ca2e348aa16b4c57eb3498eb62175100d9b9d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4083
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
In the case that an application is blocked by a model panel during shutdown, the icon will now show a "waiting" animation
like in BeOS R5.
Fixes#7980
Change-Id: Iec79fcaf431407ff51430a1a8e4c8ec41571059d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4001
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Previously, hrev55011 introduced localization for Cortex, which then
prompted to close#7530. It has then been reopened, when it turns out
that the translations for the container application (RouteApp) did not
work, whereas the individual add-ons/modules were translated.
The cause is that by default BCatalog looks up the translations based on
the subtype part of the signature. This is x-vnd.Cortex.Route (without
the application/ supertype). This change will place the translations in
the right place of the file system.
The add-ons were never affected, since they BCatalog is explicitly told
to find the translations for the entire signature, like:
static BCatalog sCatalog("application/x-vnd.Cortex.InfoView");
Even so, it was chosen to omit the `application` supertype from the
signature for the shared code as well.
This should fix#7530 for good.
Change-Id: Iff18fabef7aba68602e49db1e98cfed2f486f545
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4091
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>