1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 00:57:43 +00:00
Commit graph

14176 commits

Author SHA1 Message Date
Rodrigo Tobar
41bd304a7f LibPDF: Ignore seac PS1 commands for now
This command is meant to print an Standard Encoding Accented Character.
It's not critical to implement it yet, but if we want to render more
documents we need to handle the instruction, even if simply ignore it.
2022-12-16 01:24:43 -07:00
Liav A
d97aa9cf8c DynamicLoader: Annotate all loaded library ranges as immutable
To further protect all virtual memory regions of the loaded libraries,
don't allow to mutate these regions both in changing their annotations
nor the protection bits.
2022-12-16 01:02:00 -07:00
Liav A
6c0486277e Kernel: Reintroduce the msyscall syscall as the annotate_mapping syscall
This syscall will be used later on to ensure we can declare virtual
memory mappings as immutable (which means that the underlying Region is
basically immutable for both future annotations or changing the
protection bits of it).
2022-12-16 01:02:00 -07:00
Baitinq
27a1798dd9 LibGUI: Add GUI::SettingsWindow::add_tab() that takes a constructed tab
This patch adds a new add_tab() function in GUI::SettingsWindow that
takes an already created NonnullRefPtr<Tab> object. This allows us to
handle errors while creating the Tab object and then pass it to this
function to actually add the object to the SettingsWindow.
2022-12-15 21:00:24 +00:00
Lucas CHOLLET
2693745336 LibThreading+Everywhere: Support returning error from BackgroundAction
This patch allows returning an `Error` from the `on_complete` callback
in `BackgroundAction`.

It also adds a custom callback to manage errors returned during its
execution.
2022-12-15 17:36:57 +00:00
Lucas CHOLLET
664117564a LibGUI: Actually try something in TabWidget::try_add_widget(Widget&)
This function, while returning an `ErrorOr<void>`, didn't call failable
API.
2022-12-15 17:36:57 +00:00
Federico Guerinoni
43ff500a80 LibCore: Use ';' to split socket path in SOCKET_TAKEOVER
This allow to use socket path with spaces inside.

Closes #16436.
2022-12-15 12:33:36 -05:00
Timothy Flynn
701e77019c LibCore: Use the user's root session ID for standard runtime path
This ensures processes created by the user use the same runtime path.
2022-12-15 17:29:19 +00:00
Arda Cinar
e2566d5126 LibMarkdown: Prevent a crash when rendering code blocks to console
When parsing a code block not in a section (in a file without a
heading), the parser would initialize the code block with an
uninitialized (invalid) value for current_section. Accessing this value
would later cause a segmentation fault in render_to_terminal.
2022-12-15 16:30:21 +00:00
Arda Cinar
80563120e2 LibMarkdown: Handle error while rendering JS to HTML
The library logs the error and falls back to not colorizing the js code
inside the block instead.
2022-12-15 16:30:21 +00:00
Timothy Flynn
2dfa87814e LibJS: Update spec comments for replacing digits in Intl.NumberFormat
This is an editorial change in the ECMA-402 spec. See:
06d95ed

Note the new spec steps basically match our implementation in LibLocale.
2022-12-15 16:24:29 +00:00
Timothy Flynn
01fc025e9d LibJS: Fix a typo in an Intl.DateTimeFormat spec comment
This is an editorial change in the ECMA-402 spec. See:
078bea0
2022-12-15 16:24:29 +00:00
Lucas CHOLLET
048d0a9870 LibCore: Use System::getaddrinfo() in Socket::resolve_host 2022-12-15 13:38:13 +00:00
Lucas CHOLLET
687ef7740a LibCore: Add a wrapper for getaddrinfo() 2022-12-15 13:38:13 +00:00
Tim Schumacher
6640cb57b3 LibCore: Use AllocatingMemoryStream for SOCKSProxyClient 2022-12-15 13:28:29 +00:00
Tim Schumacher
f205f62a44 LibCore: Add an automatically allocating MemoryStream
Similar to AK::DuplexStream, this writes to the end and reads from the
beginning of a dynamically allocated buffer.
2022-12-15 13:28:29 +00:00
Tim Schumacher
8dbc7aa63f LibCore: Move the MemoryStream implementation into a separate file 2022-12-15 13:28:29 +00:00
Tim Schumacher
c6d71ca727 LibCore: Rename MemoryStream to FixedMemoryStream
This is to differentiate between the upcoming `AllocatingMemoryStream`,
which automatically allocates memory as needed instead of operating on a
static memory area.
2022-12-15 13:28:29 +00:00
Linus Groh
bd40464195 LibJS: Convert standalone construct() to NonnullGCPtr 2022-12-15 06:56:37 -05:00
Linus Groh
6ae79a84df LibJS: Convert Object::construct() to NonnullGCPtr 2022-12-15 06:56:37 -05:00
Linus Groh
03acbf0beb LibJS: Convert FunctionObject::internal_construct() to NonnullGCPtr 2022-12-15 06:56:37 -05:00
Linus Groh
1c24b82dd7 LibJS: Convert ordinary_create_from_constructor() to NonnullGCPtr 2022-12-15 06:56:37 -05:00
Linus Groh
22089436ed LibJS: Convert Heap::allocate{,_without_realm}() to NonnullGCPtr 2022-12-15 06:56:37 -05:00
Linus Groh
2a66fc6cae LibJS: Add make_handle({Nonnull,}GCPtr<T>) overloads 2022-12-15 06:56:37 -05:00
Linus Groh
029db614e3 LibJS: Ensure Optional<Completion>'s defaults to empty completion
Default-constructing the m_value Completion made it have an undefined
JS value when not overridden in a constructor, such as the conditional
initialization in Optional(Optional<JS::Completion> const&).

See investigation by Tim here:
https://github.com/SerenityOS/serenity/pull/16498#discussion_r1049090456

Co-authored-by: Timothy Flynn <trflynn89@pm.me>
2022-12-15 06:56:37 -05:00
Kyle Lanmon
0991464de6 LibWeb: Implement input range type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
c5b953e51b LibWeb: Implement input local date and time type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
a3c4af7a19 LibWeb: Implement input time type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
d249a69150 LibWeb: Implement input week type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
8197b7a063 LibWeb: Implement input month type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
edb3a0aa0a LibWeb: Implement input date type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
dfbc5553f2 LibWeb: Implement input email type sanitation algorithm 2022-12-15 09:43:41 +00:00
Kyle Lanmon
6fa34a4ee3 LibWeb: Implement input color type sanitation algorithm 2022-12-15 09:43:41 +00:00
Timothy Flynn
a2cf026b30 LibJS: Throw a RangeError when when formatting strings in DurationFormat
This is a normative change in the Intl.DurationFormat proposal. See:
2546080
2022-12-15 09:40:09 +00:00
Timothy Flynn
010888acec LibJS: Access DurationRecord properties in alphabetical order
This is a normative change in the Intl.DurationFormat proposal. See:
42e99b8
2022-12-15 09:40:09 +00:00
Timothy Flynn
85f079dc6b LibJS: Move IsValidDurationRecord check to ToDurationRecord
This is an editorial change in the Intl.DurationFormat proposal. See:
fb21723
2022-12-15 09:40:09 +00:00
Timothy Flynn
0086a3acdb LibJS: Remove infallibility markers from some Intl.DurationFormat AOs
This is an editorial change in the Intl.DurationFormat proposal. See:
fa2b3d0
2022-12-15 09:40:09 +00:00
Max Stevens
3aeb7a41c0 LibWeb: Implement more values of flexbox align-content
Implement the values 'space-between' and 'space-around'
of the 'align-content' flexbox property.

The following WPT tests now pass:
- http://wpt.live/css/css-flexbox/align-content-004.htm
- http://wpt.live/css/css-flexbox/align-content-005.htm
2022-12-15 09:27:32 +01:00
kleines Filmröllchen
0beca84624 LibIPC: Only run responsiveness timer when there is an event loop
This disables responsiveness detection when an event loop is absent.
There are no users which both need this feature but don't have an event
loop.
2022-12-15 00:21:00 -07:00
kleines Filmröllchen
7669441282 LibIPC: Add deferred invoker getter 2022-12-15 00:21:00 -07:00
kleines Filmröllchen
727fb305a8 LibAudio: Allow resampling into existing buffer
This alleviates some copying
and we can implement existing APIs in terms of this.
2022-12-15 00:21:00 -07:00
kleines Filmröllchen
cc9192a1e7 LibAudio: Expose blocking realtime enqueue to audio clients
This is just a delegate of the same function found in the shared queue
itself.
2022-12-15 00:21:00 -07:00
kleines Filmröllchen
836f28392d LibAudio: Make resampling fallible 2022-12-15 00:21:00 -07:00
meiskam
fb4315d121 LibGUI: Add dots below TabWidget close button when modified 2022-12-15 00:14:35 -07:00
meiskam
b79be56bed LibGUI: Add modified bool to TabWidget
This will allow application with multiple tabs to track modifications
per-tab, not just if the entire window has been modified
2022-12-15 00:14:35 -07:00
Lucas CHOLLET
6dd716adf2 LibFileSystemAccessClient: Add save_file()
This method replaces `try_save_file_deprecated()`, as it has the same
behavior but returns a `Core::Stream::File` instead.
2022-12-14 18:26:25 +00:00
Lucas CHOLLET
cfb0e1bdb2 LibCore: Add fd overload of File::is_directory and File::is_device 2022-12-14 18:26:25 +00:00
Lucas CHOLLET
9ae97c8cb1 LibFileSystemAccessClient: Rename try_save_file =>
`try_save_file_deprecated`

This precedes the addition of a new api using `Core::Stream`
2022-12-14 18:26:25 +00:00
Lucas CHOLLET
c71fc0683f LibFileSystemAccessClient: Rename Result => DeprecatedResult
This precedes the addition of a new `Result`, using `Core::Stream::File`
instead `Core::File`.
2022-12-14 18:26:25 +00:00
Cygnix Proto
806a55eda1 LibGfx+Userland: Make Gfx::SystemTheme propagate errors
This patch introduces error propagation to Gfx::SystemTheme to remove
instances of release_value_but_fixme_should_propagate_errors().

Userland applications that have been affected by this change have been
updated to utilise this propagation and as a result 4 such instances of
the aforementioned method have been removed.
2022-12-14 18:25:28 +00:00