summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-21LibWasm: Add a instruction_from_name getterAli Mohammad Pur
2021-12-21LibWasm: Print the block type for structured argumentsAli Mohammad Pur
2021-12-21LibWasm: Fix silly typo in f32 reinterpret validationAli Mohammad Pur
2021-12-21LibWasm: Make blocks that take arguments actually workAli Mohammad Pur
Previously we were ignoring the actual parameters and setting the arity to an incorrect value, which could cause crashes (or unexpected traps).
2021-12-21LibWasm: Implement memory.init and passive mode dataAli Mohammad Pur
2021-12-21Meta: Update my .mailmap entry to contain all the emails I useAli Mohammad Pur
For some reason, I've used 'Ali.mpfard' as opposed to 'ali.mpfard'. This maps that email to my serenityos email :P
2021-12-21LibCore: Fix Lagom build of Core::System::utime()Andreas Kling
2021-12-21LibCore: Add missing <utime.h> include to System.hAndreas Kling
2021-12-20touch: Port to LibMain :^)Andreas Kling
2021-12-20LibMain: Print serenity_main() errors to the debug logAndreas Kling
And let's make them red too, to help us notice them. :^)
2021-12-20LibCore: Add syscall wrapper for utime()Andreas Kling
2021-12-20LibGUI: Make GUI::try_create_default_icon() tolerate single-size iconsAndreas Kling
Some icons only exist in 16x16 and we should still allow them to be loaded via the LibGUI default icon system. This patch also reimplements GUI::default_icon() as a MUST() wrapper around try_create_default_icon().
2021-12-20AK+LibMain: Improve formatter for AK::Error in userspaceAndreas Kling
Print the full associated string metadata by default (if available.)
2021-12-20Base: Update boot_parameters(7) to describe the enable_ioapic optionLiav A
The document describes the implications of enabling and disabling that option on the ability to enable SMP mode, and describes the requirements for enabling IOAPIC mode even without enabling SMP mode.
2021-12-20Kernel: Ensure SMP mode is not enabled if IOAPIC mode is disabledLiav A
We need to use the IOAPIC in SMP mode, so if the user requested to disable it, we can't enable SMP mode either.
2021-12-20Base: Add a man page for HelpSam Atkins
This is largely copied from the `man` man page, since the same information applies.
2021-12-20Help: Include page names in the searchSam Atkins
This fixes the problem before, where searching "Shell" would list "Shell-vars" in the results, but searching "Shell-vars" would make it disappear. Also removed some now-unnecessary includes.
2021-12-20Help: Add support for launching with a section and page, like manSam Atkins
I found it strange that `man` and `Help` did not accept the same command line arguments since they are so similar. So... now they do. :^) This means you can now open for example the `tar` man page in Help with `Help tar`, or `Help 1 tar` if you want to disambiguate between pages in different sections. If the result is not found, it falls back to the previous behavior, treating the input as a search query. Initially I had this written as two optional positional arguments, but when told to parse `[optional int] [optional string]`, and then given a string input, ArgsParser forwards it to the [optional int], which then fails to parse. Ideally it would pass it to the second, [optional string] arg instead, but that looks like a fairly big change to make to ArgsParser's internals, and risk breaking things. Maybe this ugly hack will be an incentive to fix it. :^)
2021-12-20Help: Move `update_actions()` code into `open_page()`Sam Atkins
These two lambdas are always called together, in this order, so why not make them one instead? Also converted a couple of west-consts to east-const.
2021-12-20Help: Always show the welcome page on launch if nothing else is thereSam Atkins
Previously, launching Help with a query like `Help tar` left the page blank, which looks like something has gone wrong. Instead, let's show the usual welcome page.
2021-12-20Base: Add Danish keymapRasmusNylander
Based on what characters Windows 10 wrote when a key was pressed. This makes it a lot nicer to use a Danish keyboard :^)
2021-12-20Magnifier: Add timeline for easy checking of animationsJunior Rantila
This patch adds a 512 frame timeline to Magnifier and the ability to step through it with the arrow keys. This makes it easier to check Serenity animations frame by frame for correctness etc.
2021-12-20Ports/ncurses: Check for proper `tic` version during installBen Reeves
MacOS ships with an out of date ncurses that can't properly generate terminfo from the newer source code. This change checks for a valid `tic` executable of the proper version, first in PATH and then in the Homebrew cellar if brew is installed. Otherwise it aborts installation. See comment in the code as well as the following for details: https://github.com/termux/termux-packages/issues/4487#issuecomment-626277493 https://lists.gnu.org/archive/html/bug-ncurses/2019-07/msg00020.html.
2021-12-20Ports: Add libssh2 portRafał Babiarz
2021-12-20cp: Print proper error message with strerrorPerikiyoXD
When cp fails, now it prints an error string (strerror) instead of an error code.
2021-12-20Piano: Make `Key_Space` shortcut to toggle playbackJunior Rantila
2021-12-20Base: Add some Old South Arabian characters to font Katica Regular 10Lady Gegga
10A60-10A7F https://www.unicode.org/charts/PDF/U10A60.pdf
2021-12-20LibGL: Only pass bound texture units to rasterizerJelle Raaijmakers
Before, `SoftwareRasterizer` was iterating over all 32 possible texture units for each fragment and checking each if they're bound to a texture. After this change, an intrusive list containing only texture units with bound textures is passed to the rasterizer. In GLQuake, this results in a performance improvement of ~30% (from 12 to 16 FPS in the first demo) on my machine.
2021-12-20LibGL: Use 8x8 block size in `SoftwareRasterizer`Jelle Raaijmakers
This smaller block size allows us to use an `u8` for the pixel mask during triangle rasterization. These changes result in better FPS in 3DFileViewer, which periodically shoots up to 250-300 FPS on my machine. Before, the peaks were somewhere in the range of 160-170 FPS.
2021-12-20Kernel: Return EINVAL when specifying -1 for setuid and similar syscallsLiav A
For setreuid and setresuid syscalls, -1 means to set the current uid/euid/gid/egid value, to be more convenient for programming. However, for other syscalls where we pass only one argument, there's no justification to specify -1. This behavior is identical to how Linux handles the value -1, and is influenced by the fact that the manual pages for the group of one argument syscalls that handle ID operations is ambiguous about this topic.
2021-12-20Profiler: Display tooltip when hovering over flamegraph barsRok Povsic
2021-12-20Profiler: Extract the bar label String into a private methodRok Povsic
2021-12-19LibGL: Fix texture sampling texel coordinate calculationStephan Unverwerth
Previously we multiplied the interpolated texture coordinates by width - 1 and height - 1 instead of width and height which resulted in some wrongly mapped textures, especially visible in the glquake light maps. This also corrects the wrap mode being wrongly swapped for s/t coordinates. Since we do not have texture borders implemented yet we always use GL_CLAMP_TO_EDGE for all clamping wrap modes for the time being.
2021-12-19watch: Port to LibMainJunior Rantila
2021-12-19LibCore: Add wrapper for signal()Junior Rantila
2021-12-19LibC: Implement wcsdupTim Schumacher
2021-12-19LibTest: Add `EXPECT_NO_CRASH`Michel Hermier
2021-12-19LibTest: Add `EXPECT_CRASH_WITH_SIGNAL`Michel Hermier
2021-12-19LibTest: Handle test reporting in the a unique pathMichel Hermier
2021-12-19LibTest: Change `Crash` forked process communicationMichel Hermier
Now it returns `Failure` value via `exit`, and the caller is responsible of reporting errors to the user.
2021-12-19LibTest: Handle Crash printing in a private methodMichel Hermier
2021-12-19Tests: Add test for `raise`Michel Hermier
2021-12-19Tests: Add test for `assert`Michel Hermier
2021-12-19Tests: Add test for `abort`Michel Hermier
2021-12-19SystemServer: Fixed grammatical error "a charm"Jonta
2021-12-19Base: Add shutdown(1) manpageLiav A
2021-12-19Base: Add reboot(1) manpageLiav A
2021-12-19Base: Add rm(1) manpagenetworkException
2021-12-19Kernel: Stop ProcFS stack walk on bogus userspace->kernel traversalAndreas Kling
Unsurprisingly, the /proc/PID/stacks/TID stack walk had the same arbitrary memory read problem as the perf event stack walk. It would be nice if the kernel had a single stack walk implementation, but that's outside the scope of this commit.
2021-12-19Kernel: Make perfcore files owned by UID=0, GID=0Andreas Kling
Since perfcore files can be generated during process finalization, we can't just allow them to contain sensitive kernel information if they're gonna be owned by the process's own UID+GID. So instead, perfcores are now owned by 0:0. This is not the most ergonomic solution, but I'm not sure what we could do to make it nicer. We'll have to think more about that. In the meantime, this patches up a kernel info leak. :^)