Brian Gianforcaro
59ba316ac6
AK: Annotate more AK::Span methods as nodiscard
2021-07-01 22:44:06 +02:00
Brian Gianforcaro
60efe18a31
Kernel: Handle OOM when allocating Thread FPUState
...
Move FPUState allocation to Thread::try_create so that allocation
failure can be observed properly by the caller.
2021-07-01 22:43:48 +02:00
Idan Horowitz
4fb962a0b9
CI: Add x86_64 on target tests
2021-07-01 22:42:54 +02:00
Timothy Flynn
1bbf3f1d09
LibWeb: Do not encode "internal_id" in DOM JSON
...
This is now unused.
2021-07-01 19:19:46 +02:00
Timothy Flynn
447ecc2155
LibWeb: Maintain a map of child-to-parent nodes in OOPWV DOM Inspector
...
Currently, each time parent_index() is invoked, two depth-first searches
are incurred to find the node's parent and grandparent. This becomes
particularly expensive, for example, when trying to scroll through a
large <ul> list.
Instead, upon creation, traverse the DOM JSON and create a map of child
nodes to their parent. Then those two lookups become hash map lookups
rather than a DFS traversal.
2021-07-01 19:19:46 +02:00
Idan Horowitz
97ea192e3e
CI: Cancel duplicate workflow runs for pull requests
...
These are created when a pull request is force-pushed to, which results
in the unneeded waste of action runners on the obsolete CI run.
2021-07-01 18:26:32 +02:00
Idan Horowitz
3265141286
Meta: Make serenity.sh pass the SERENITY_ARCH cmake argument for x86_64
...
This is required as our CMake config defaults to i686 if not overriden
manually via the SERENITY_ARCH argument.
2021-07-01 18:08:16 +02:00
Timothy
efcfc8ef7f
InspectorServer: Use LocalSocket method to get pid
2021-07-01 17:49:18 +02:00
Timothy
972e5d7292
LibCore: Add peer pid retrieval for LocalSocket
...
This will allow programs connected over unix sockets to retrieve the
pid of their peers in a nice way.
2021-07-01 17:49:18 +02:00
Andreas Kling
c52ea3dad5
LibJS: Try to fix Clang build (NewClass::m_class_expression is unused)
2021-07-01 17:46:45 +02:00
Johan Dahlin
f6028c2534
LibJS: NewClass bytecode instruction
...
This adds a the NewClass bytecode instruction, enough of it
is implemented for it to show it in the bytecode (js -d).
2021-07-01 17:34:05 +02:00
Hendiadyoin1
3694b8b690
Kernel: Only deallocate memory when alloc succeeds
...
Also make AllocationHeader acquisition from pointers more verbose
2021-07-01 17:32:34 +02:00
Hendiadyoin1
5f6c513610
Kernel: Add support for 64-bit unaligned Mem-ops
...
Also let the compiler enforce the size and type restrictions
2021-07-01 17:32:34 +02:00
Hendiadyoin1
6b9cf8376e
Kernel: Remove not needed comment in Processor.h
2021-07-01 17:32:34 +02:00
Gunnar Beutner
092ee955aa
DynamicLoader: Remove obsolete comment
2021-07-01 17:22:22 +02:00
Gunnar Beutner
16b9a2d2e1
Kernel+LibPthread: Add support for usermode threads on x86_64
2021-07-01 17:22:22 +02:00
Gunnar Beutner
93c741018e
Kernel+LibPthread: Remove m_ prefix for public members
2021-07-01 17:22:22 +02:00
Idan Horowitz
648b4c7d74
LibJS: Bring JSON.parse slightly closer to the specification
...
This PR does not fix the main issue with our current implementation:
The specification requires that we first check the JSON string for
validity with an ECMA-404 compliant parser, and then evaluate it as if
it was javascript code, of which we do neither at the moment.
2021-07-01 14:14:41 +01:00
Sam Atkins
f5e63f785a
FileManager: Remove clicked breadcrumbs for non-existing directories
...
This fixes #8204 .
In the case that we just navigated up from a directory because it was
deleted, we can detect that easily by checking if the child directory
exists, and then remove the relevant breadcrumbs immediately.
However, it's harder to notice if a child directory for a breadcrumb
is deleted at another time. Previously, clicking that breadcrumb would
crash, but now we check to see if the directory it points to actually
exists. If it doesn't, we pop that breadcrumb and any after it, off
of the breadcrumbbar.
This may not be the ideal solution - maybe it should detect that the
directory is gone automatically - but it works and doesn't involve
managing additional directory watchers.
2021-07-01 17:15:26 +04:30
Sam Atkins
d8e0535116
LibGUI: Add search/removal methods to Breadcrumbbar
...
Both are used by FileManager in the next commit.
find_segment_with_data() was previously a single-use lambda in
FileManager, but making it a method of Breadcrumbbar means we can
re-use it more easily.
2021-07-01 17:15:26 +04:30
Sam Atkins
17615641db
LibGUI: Navigate to parent when FileSystemModel directory is deleted
...
Previously, FileSystemModel would not notice if the directory it has
open (or a parent one) was deleted. Now, it scans for the closest
existing parent directory and opens that.
Also, deleted files and directories that are children of the open dir
now correctly refresh their parent node instead of their own node.
2021-07-01 17:15:26 +04:30
Andreas Kling
0fa141d058
LibJS: Move Binding struct into the DeclarativeEnvironment class
...
Nobody on the outside needs to access this.
2021-07-01 12:31:39 +02:00
Andreas Kling
44221756ab
LibJS: Drop "Record" suffix from all the *Environment record classes
...
"Records" in the spec are basically C++ classes, so let's drop this
mouthful of a suffix.
2021-07-01 12:28:57 +02:00
Andreas Kling
56d25d7210
LibWeb: Show "x86_64" in the user agent string on x86_64 :^)
2021-07-01 12:15:52 +02:00
Andreas Kling
33260ea99b
LibC: Fix jmp_buf layout on x86_64
...
This struct was too small on x86_64, but setjmp() would happily write
past the end of it.
This makes `test-js` run to completion on x86_64 :^)
2021-07-01 12:05:59 +02:00
Idan Horowitz
8d50cf492e
LibJS: Bring JSON.stringify closer to the specification
2021-07-01 11:44:37 +02:00
Gal Horowitz
172d81a717
LibCrypto: Add tests for SignedBigInteger bitwise operations
2021-07-01 11:37:16 +02:00
Gal Horowitz
3872c31b08
LibCrypto: Replace incorrect operator in SignedBigInteger::bitwise_and
2021-07-01 11:37:16 +02:00
Gal Horowitz
38e9e35380
LibCrypto: Replace use of negate() in SignedBigInteger::bitwise_or
...
Calling negate() on a big integer does not make it negative, but
rather flips its sign, so this was not actually acting as an OR.
2021-07-01 11:37:16 +02:00
Andreas Kling
3f5c9d3edb
CrashReporter: Fix bogus register alignment on x86_64
2021-07-01 11:35:52 +02:00
Idan Horowitz
e37f96ccfe
LibJS: Stop coercing this to object in Function's Symbol.hasInstance
2021-07-01 11:35:16 +02:00
Idan Horowitz
6ef56f79bd
LibJS: Stop coercing Date.prototype[Symbol.toPrimitive] hint to string
2021-07-01 09:55:50 +01:00
Idan Horowitz
9295f1936c
LibELF: Check for missing PT_LOAD alignment header value
...
This ensures we dont divide by zero when checking for valid alignment
values.
2021-07-01 10:50:49 +02:00
Gunnar Beutner
f9a8c6f053
LibELF: Implement support for RELA relocations
2021-07-01 10:50:00 +02:00
Gunnar Beutner
1f93ffcd72
LibELF: Simplify ELF load address calculations
...
These were unnecessarily complicated.
2021-07-01 10:50:00 +02:00
Gunnar Beutner
2dbd3f83c1
LibELF: Fix incorrect error message
2021-07-01 10:50:00 +02:00
Hendiadyoin1
90cd11fa8c
Kernel: Support starting up secondary processors on x86_64
2021-07-01 10:50:00 +02:00
Idan Horowitz
7a1a91d7f2
LibJS: Check for DataView in ArrayBuffer.isView()
2021-07-01 09:20:00 +01:00
DoubleNegation
e992658c12
DisplaySettings: Adjust FontSettings.gml to work with dark themes
...
The FontSettings widget now uses background_role instead of
background_color to ensure that it displays properly independently of
the active system theme.
2021-07-01 00:10:25 +02:00
DoubleNegation
d19edb0762
LibGUI: Add foreground_role and background_role property to GUI::Widget
...
These properties allow GML files to specify a Gfx::ColorRole instead of
a color, so that the effective color of the Widget is resolved using the
system theme.
2021-07-01 00:10:25 +02:00
Gal Horowitz
d0c7a48186
Meta: Add environment variable for disabling qemu's gdb socket
...
When running QEMU on windows, the `-s` does not work, and causes QEMU to
crash, you can now use the environment variable to disable that option.
2021-06-30 18:49:04 +01:00
Gal Horowitz
eed6adb6fc
Meta: Do not use gl=on if building in WSL2
...
The existing check only detects WSL1, this adds a new check which also
detects WSL2.
2021-06-30 18:49:04 +01:00
Idan Horowitz
dfed8f61cb
LibJS: Use the GetFunctionRealm abstract-op in ArraySpeciesCreate
2021-06-30 18:41:32 +01:00
Idan Horowitz
c254e4cf10
LibJS: Get the prototype of a new String from the constructor's realm
2021-06-30 18:41:32 +01:00
Idan Horowitz
5606332ed7
LibJS: Add a [[Realm]] getter to FunctionObject and use it where needed
...
Defined by https://tc39.es/ecma262/#sec-ordinaryfunctioncreate step #17
and by https://tc39.es/ecma262/#sec-createbuiltinfunction step #6 .
2021-06-30 18:41:32 +01:00
Idan Horowitz
38b8fa8f3e
LibJS: Ensure shift values in left_shift are modded by 32
...
This is equivalent to 58d6a2d0192b7860ecb2edb4aa5d36b389213a15 but for
the left shift operation.
2021-06-30 19:06:01 +02:00
Hendiadyoin1
2c2cf90661
Utilities: Fix Build on x86_64
2021-06-30 19:05:51 +02:00
Hendiadyoin1
8e575d2f62
Debugger: Compile on x86_64
...
This is not guaranteed to work at all
2021-06-30 19:05:51 +02:00
Hendiadyoin1
59eea93d2a
Userland: Disable Hackstudio and UE on x86_64
2021-06-30 19:05:51 +02:00
davidot
7a3b057a20
LibJS: Add String.prototype.split using the @@split methods on object
2021-06-30 16:08:00 +01:00