summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-01LibJS: Drop "Record" suffix from all the *Environment record classesAndreas Kling
"Records" in the spec are basically C++ classes, so let's drop this mouthful of a suffix.
2021-07-01LibWeb: Show "x86_64" in the user agent string on x86_64 :^)Andreas Kling
2021-07-01LibC: Fix jmp_buf layout on x86_64Andreas Kling
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-01LibJS: Bring JSON.stringify closer to the specificationIdan Horowitz
2021-07-01LibCrypto: Add tests for SignedBigInteger bitwise operationsGal Horowitz
2021-07-01LibCrypto: Replace incorrect operator in SignedBigInteger::bitwise_andGal Horowitz
2021-07-01LibCrypto: Replace use of negate() in SignedBigInteger::bitwise_orGal Horowitz
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-01CrashReporter: Fix bogus register alignment on x86_64Andreas Kling
2021-07-01LibJS: Stop coercing this to object in Function's Symbol.hasInstanceIdan Horowitz
2021-07-01LibJS: Stop coercing Date.prototype[Symbol.toPrimitive] hint to stringIdan Horowitz
2021-07-01LibELF: Check for missing PT_LOAD alignment header valueIdan Horowitz
This ensures we dont divide by zero when checking for valid alignment values.
2021-07-01LibELF: Implement support for RELA relocationsGunnar Beutner
2021-07-01LibELF: Simplify ELF load address calculationsGunnar Beutner
These were unnecessarily complicated.
2021-07-01LibELF: Fix incorrect error messageGunnar Beutner
2021-07-01Kernel: Support starting up secondary processors on x86_64Hendiadyoin1
2021-07-01LibJS: Check for DataView in ArrayBuffer.isView()Idan Horowitz
2021-07-01DisplaySettings: Adjust FontSettings.gml to work with dark themesDoubleNegation
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-01LibGUI: Add foreground_role and background_role property to GUI::WidgetDoubleNegation
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-06-30Meta: Add environment variable for disabling qemu's gdb socketGal Horowitz
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-30Meta: Do not use gl=on if building in WSL2Gal Horowitz
The existing check only detects WSL1, this adds a new check which also detects WSL2.
2021-06-30LibJS: Use the GetFunctionRealm abstract-op in ArraySpeciesCreateIdan Horowitz
2021-06-30LibJS: Get the prototype of a new String from the constructor's realmIdan Horowitz
2021-06-30LibJS: Add a [[Realm]] getter to FunctionObject and use it where neededIdan Horowitz
Defined by https://tc39.es/ecma262/#sec-ordinaryfunctioncreate step #17 and by https://tc39.es/ecma262/#sec-createbuiltinfunction step #6.
2021-06-30LibJS: Ensure shift values in left_shift are modded by 32Idan Horowitz
This is equivalent to 58d6a2d0192b7860ecb2edb4aa5d36b389213a15 but for the left shift operation.
2021-06-30Utilities: Fix Build on x86_64Hendiadyoin1
2021-06-30Debugger: Compile on x86_64Hendiadyoin1
This is not guaranteed to work at all
2021-06-30Userland: Disable Hackstudio and UE on x86_64Hendiadyoin1
2021-06-30LibJS: Add String.prototype.split using the @@split methods on objectdavidot
2021-06-30LibJS: Add String.prototype.indexOf position argumentdavidot
2021-06-30HeaderView: Fix horizonal section size miscalculationOlivier De Canniere
When calculating the horizonal size of a section in `HeaderView::visible_section_range()`, the horizonal padding is now correctly taken into account. This fixes header missalignment issues in Spreadsheet, SystemMonitor and maybe also the playlist tab of SoundPlayer closes #8268
2021-06-30LibCoreDump: Change Backtrace debug info cache to member variableMax Wipfli
This changes the previously static s_debug_info_cache to a member variable. This is required so the cache is not kept alive if the Backtrace object is destroyed. Previously, the cache object would keep alive MappedFile objects and other data, resulting in CrashReporter and CrashDaemon using more than 100 MB of memory even after the Backtrace objects have been destroyed (and the data is thus no longer needed). This was especially the case when handling crashes from Browser (due to libweb.so and libjs.so). Due to this change, object_info_for_region has been promoted to a instance method. It has also been cleaned up somewhat.
2021-06-30Kernel: Disable __thread and TLS on x86_64 for nowGunnar Beutner
They're not yet properly supported.
2021-06-30LibPthread: Remove redundant return statementGunnar Beutner
The pthread_exit() function doesn't return and is marked as such.
2021-06-30Kernel: Fix stack alignment on x86_64Gunnar Beutner
These were already properly aligned (as far as I can tell).
2021-06-30Kernel: Properly initialize r8-r15 for new threads on x86_64Gunnar Beutner
2021-06-30Kernel: Don't start usermode threads on x86_64 for nowGunnar Beutner
Starting usermode threads doesn't currently work on x86_64. With this stubbed out we can get text mode to boot though.
2021-06-30LibWeb: Define hot DOMTreeJSONModel methods in-lineTimothy Flynn
2021-06-30LibWeb: Store JSON pointers in the OOPWV DOM Inspector model indicesTimothy Flynn
Currently, the DOM Inspector stores a numeric ID for each DOM node. This is used to look up the data for that node in the JSON representation of the DOM. The method to do this search performs a depth-first search through the JSON value, and is invoked quite frequently. Instead, we can just store a pointer to the JSON value in the index, and avoid this search altogether. This is similar to how the IPWV stores a pointer to the DOM node.
2021-06-30LibWeb: Do not create copies of JSON values in OOPWV DOM InspectorTimothy Flynn
To improve the performance of the DOM Inspector when the Browser is run in multi-process mode, do not create copies of the JSON values sent via IPC when searching for a model index. Methods that are guaranteed to return a value now return a reference. Methods that do not have such a guarantee return a pointer (rather than an Optional, because Optional cannot hold references). The DOM Inspector performs well at first, but will start lagging again once the tree is expanded a few nodes deep and/or with many nodes visible in the tree.
2021-06-30LibJS: Optimize & Bring String.prototype.repeat closer to the specIdan Horowitz
Specifically, we immediately return an empty string when `this` is an empty string, instead of wasting time in a loop doing nothing N times.
2021-06-30LibJS: Bring the Array constructor slightly closer to the specificationIdan Horowitz
Specifically, we now cast to a u32 instead of an i32, as well as use the validity check required by the specification. The current constructor is still quite far from the specification, as we directly set the indexed properties' length instead of going through the Array's overriden DefineOwnProperty. (and as a result the checks imposed by the ArraySetLength abstract operation)
2021-06-30Assistant: Use static_cast instead of dynamic_castAndreas Kling
When the type is guaranteed to be known, there's no need to use RTTI.
2021-06-30Assistant: Don't add a subtitle label widget if we don't need itAndreas Kling
2021-06-30Kernel: Don't compile JsonValue & friends into the kernelAndreas Kling
2021-06-30LibKeyboard: Remove an unnecessary #include when building with KERNELAndreas Kling
2021-06-30run-tests: Update for LexicalPath API changesAndreas Kling
2021-06-30AK: Use canonicalized_path in LexicalPath::relative_pathMax Wipfli
This avoids construction of LexicalPath objects.
2021-06-30AK: Add [[nodiscard]] to LexicalPath methods construction objectsMax Wipfli
2021-06-30AK: Move path canonicalization into LexicalPath::canonicalized_pathMax Wipfli
This moves the path canonicalization from the LexicalPath constructor to canonicalized_path. This allows canonicalized path to no longer construct a LexicalPath object and initialize all its member variables.
2021-06-30AK+Everywhere: Remove "null state" of LexicalPathMax Wipfli
This removes the default constructor of LexicalPath, and subsequently modifies all its users to accommodate the change.