summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-23LibC: Add definition for FOPEN_MAXJean-Baptiste Boric
2021-10-23EchoServer: Defer removal of client from clients HashMapBrendan Coles
This is necessary to avoid trying to destruct the on_ready_to_read function from inside the function.
2021-10-23TelnetServer: Defer removal of client from clients HashMapBrendan Coles
This is necessary to avoid trying to destruct the on_ready_to_read function from inside the function.
2021-10-23LibWeb: Make CSS ParsingContext's Document* be constSam Atkins
The only reason it wasn't const before (and why we had a const_cast hack) was to support ImageStyleValue's constructor taking it, which no longer applies. `hack_count--;` :^)
2021-10-23LibWeb: Move image resource request out of ImageStyleValue constructorSam Atkins
This always felt awkward to me, and required a few other hacks to make it work. Now, the request is only started when `load_bitmap()` is called, which we do inside `NodeWithStyle::apply_style()`.
2021-10-23watch: Add ability to run command on file changejunior rantila
2021-10-23watch: VERIFY that command vector ends with nullptrjunior rantila
2021-10-23watch: Remove unnecessary call to StringBuilder::appendffjunior rantila
2021-10-23Utilities: Change watch utility to use eastconst stylejunior rantila
2021-10-23LibJS: Update Annex B String.prototype extension spec section numbersLinus Groh
2021-10-23LibJS: Add "at" to Array.prototype[@@unscopables]Linus Groh
2021-10-23LibJS: Use ECMA-262 spec URLs for .at() (relative indexing, now stage 4)Linus Groh
2021-10-23LibJS: Use ECMA-262 spec URL for Object.hasOwn() (now stage 4)Linus Groh
2021-10-23LibJS: Mark GetEpochFromISOParts as infallibleLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/66ea81b
2021-10-23LibJS: Convert ArrayPrototype functions to ThrowCompletionsOrIdan Horowitz
2021-10-23LibJS: Convert the FlattenIntoArray AO to ThrowCompletionOrIdan Horowitz
2021-10-23LibJS: Convert array_merge_sort to ThrowCompletionOrIdan Horowitz
2021-10-23LibJS: Convert the ArraySpeciesCreate AO to ThrowCompletionOrIdan Horowitz
2021-10-23LibJS: Convert ArrayConstructor functions to ThrowCompletionOrIdan Horowitz
2021-10-23LibJS: Remove vm.construct and it's usagesIdan Horowitz
2021-10-22LibJS: Convert Intl.NumberFormat functions to ThrowCompletionOrLinus Groh
2021-10-22LibJS: Convert Intl.Locale functions to ThrowCompletionOrLinus Groh
2021-10-22LibJS: Convert Intl.ListFormat functions to ThrowCompletionOrLinus Groh
2021-10-22LibJS: Convert Intl.DisplayNames functions to ThrowCompletionOrLinus Groh
2021-10-22LibJS: Convert Intl.getCanonicalLocales() function to ThrowCompletionOrLinus Groh
2021-10-22LibC: Fix up mblenTim Schumacher
2021-10-22LibC: Fix up mbtowcTim Schumacher
One more proper implementation and one less FIXME.
2021-10-22LibGfx: Restrict cleared area to GIF framebufferBen Wiederhake
Found by OSS Fuzz, long-standing issue https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=34824 The discovered testcase attempts to clear the framebuffer of size 1056x32 from the previous image, which has size 16416x32.
2021-10-22man.serenityos.org: Make section titles more descriptiveBen Wiederhake
2021-10-22man.serenityos.org: Use pandoc for listings and landing pageBen Wiederhake
This makes all pages look and feel the same, because they all use the default CSS generated by pandoc. Also, it inserts the banner everywhere at the top, not only into the top-level index.html. Credit to @xSlendiX for suggesting that `-B` works here.
2021-10-22man.serenityos.org: Fix links to man(1), avoid unnecessary shellsBen Wiederhake
This fixes the current bug at the end of less(1), which links to the wrong file ".html" instead of "man.html".
2021-10-22man.serenityos.org: Simplify local buildsBen Wiederhake
I simply extracted the script from .github/workflows/manpages.yml, without significant modification.
2021-10-22man.serenityos.org: Add section descriptions to overview pageBen Wiederhake
2021-10-22WindowServer: Support displaying window titles when there are no buttonsTimothy Flynn
Currently, if there are not titlebar buttons, we fail to paint the title because we treat the leftmost titlebar button as the empty rect. We will now use the rightmost edge of the titlebar when there are no buttons.
2021-10-22LibJS: Convert Array AOs to ThrowCompletionOrIdan Horowitz
2021-10-22LibJS: Convert Locale AOs to ThrowCompletionOrIdan Horowitz
2021-10-22WindowServer: Re-evaluate hover state when active window changesAndreas Kling
This effectively makes us send a "mouse move" event to windows when they become active, even if the mouse didn't actually move. By doing this, we trigger hover/tooltip/etc logic immediately, instead of doing it on the next 1px mouse movement. It's a small detail but my goodness does it feel better this way. :^)
2021-10-22Tests: Add a unit test to ensure the /dev/mem device works correctlyLiav A
To ensure everything works as expected, a unit test was added with multiple scenarios. This binary has to have the SetUID flag, and we also bind-mount the /usr/Tests directory to allow running of SetUID binaries.
2021-10-22Kernel: Fix restrictions in is_allowed_to_mmap_to_userspace functionLiav A
This small change simplifies the function a bit but also fixes a problem with it. Let's take an example to see this: Let's say we have a reserved range between 0xe0000 to 0xfffff (EBDA), then we want to map from the memory device (/dev/mem) the entire EBDA to a program. If a program tries to map more than 131072 bytes, the current logic will work - the start address is 0xe0000, and ofcourse it's below the limit, hence it passes the first two restrictions. Then, the third if statement will fail if we try to mmap more than the said allowed bytes. However, let's take another scenario, where we try to mmap from 0xf0000 - but we try to mmap less than 131072 - but more than 65536. In such case, we again pass the first two if statements, but the third one is passed two, because it doesn't take into account the offseted address from the start of the reserved range (0xe0000). In such case, a user can easily mmap 65535 bytes above 0x100000. This might seem negligible. However, it's still a severe bug that can theoretically be exploited into a info leak or tampering with important kernel structures.
2021-10-21LibC: Implement mbsnrtowcsTim Schumacher
2021-10-21LibC: Implement wcsnrtombsTim Schumacher
2021-10-21LibC: Implement mbrlenTim Schumacher
2021-10-21Utilities: Add fdtdump for dumping OpenFirmware Device TreesAndrew Kaster
Use the new LibDeviceTree to dump the contents of the device tree blob (Flattened Device Tree) file passed on the command line.
2021-10-21Libraries: Add LibDeviceTree for manipulating OpenFirmware Device TreesAndrew Kaster
Starting with header validation and a dump() method that can be used to debug future parsing work.
2021-10-22Kernel: Make FrameBufferDevice::try_to_set_resolution() return KResultAndreas Kling
2021-10-22Kernel: Remove unused InodeIdentifier::to_string()Andreas Kling
2021-10-21LibJS: Convert Temporal.ZonedDateTime functions to ThrowCompletionOrLinus Groh
2021-10-21LibJS: Convert Temporal.TimeZone functions to ThrowCompletionOrLinus Groh
2021-10-21LibJS: Convert Temporal.PlainYearMonth functions to ThrowCompletionOrLinus Groh
2021-10-21LibJS: Convert Temporal.PlainTime functions to ThrowCompletionOrLinus Groh