Age | Commit message (Collapse) | Author |
|
This is useful when you want to ensure some little thing happens when you
exit a certain scope.
This patch makes use of it in LibC's netdb code to make sure we close the
connection to the LookupServer.
|
|
|
|
|
|
This is a small change to the existing split() functionality to support
the case of splitting a string and stopping at a certain number of
tokens. This is useful for parsing e.g. key/value pairs, where the value
may contain the delimiter you're splitting on.
|
|
I feel reasonably confident that I might have gotten these right. :^)
|
|
|
|
String cheaper
... at the cost of an additional pointer per view.
|
|
We should work towards a pattern where we take StringView as function
arguments, and store String as member, to push the String construction
to the last possible moment.
|
|
And tidy up existing view() users.
|
|
|
|
|
|
|
|
|
|
Executable segments now get an "x" character in their region name.
|
|
Instead of having to inspect 'prot' at every call site, make the Process
API's take care of that so we can just pass it through.
|
|
Finally everything that can be held by a FileDescriptor actually inherits
from the File class.
|
|
Also run it across the whole tree to get everything using the One True Style.
We don't yet run this in an automated fashion as it's a little slow, but
there is a snippet to do so in makeall.sh.
|
|
|
|
Should also presumably allow for escaping and such, but this is a start.
Fixes #112.
|
|
These functions make sure that the underlying table can accomodate at least
'capacity' entries before needing a rehash.
|
|
This code:
if (path.string().to_lowercase().ends_with(".foo"))
Can now be written as:
if (path.has_extension(".foo"))
|
|
|
|
|
|
This is far from finished and the two classes are awkwardly grabbing at each
other's innards, but here's a first step in the right direction.
|
|
This is in preparation for eventually using it in userspace.
LinearAddress.h has not been moved for the time being (as it seems to be
only used by a very small part of the code).
|
|
|
|
|
|
|
|
The scheduler expects m_select_timeout to act as a deadline. That is, it
should contain the time that a task should wake at -- but we were
directly copying the time from userspace, which meant that it always
returned virtually immediately.
At the same time, fix CEventLoop to not rely on the broken select behavior
by subtracting the current time from the time of the nearest timer.
|
|
This makes out-of-tree linking possible. And at the same time, add a
CMakeToolchain.txt file that can be used to build arbitrary cmake-using
applications on Serenity by pointing to the CMAKE_TOOLCHAIN_FILE when
running cmake:
-DCMAKE_TOOLCHAIN_FILE=~/code/serenity/Toolchain/CMakeToolchain.txt
|
|
Also rename the classes to match LibCore naming style.
This means that it's no longer incorrectly linked into LibC and Kernel.
|
|
This is needed for e.g. ln
|
|
ArgsParser
|
|
It makes sense to keep this consistent between applications, and the
purpose of the string is not immediately obvious from an API perspective.
If we need to make it configurable later, that can come from a setter.
|
|
Rather than requiring a boolean for whether or not the argument is
required, add some new methods to make the purpose of the bool explicit.
|
|
Remove tabs, make whitespace lines a little more in fitting with the rest of the codebase.
|
|
|
|
|
|
|
|
* Added killall command
* Fixed feedbacks of awesomekling
* Implemented pidof program and helper to parse arguments called ArgsParser.
* Fixed feedbacks in pidof implem.
Fixes #26
|
|
|
|
This is a prerequisite for some optimizations.
|
|
|
|
This is off by default, but enabled by TextEditor. It simply inserts the
same number of leading spaces as the previous line when hitting Enter. :^)
|
|
This way you can spam small write()s on a file without the kernel writing
to disk every single time. Flushes are included in the FS::sync() operation
and will get triggered regularly by syncd. :^)
|
|
This is really making me question not using 64-bit integers more.
|
|
|
|
I just discovered the hard way that clobbering FPU/MMX/SSE registers in the
kernel makes things very confusing for userspace (and other kernel threads.)
Let's banish all of those things from the kernel to keep things simple.
|
|
This will create a String from any BufferType that has data() and size().
|
|
This makes Vector malloc-free as long as you stay within the templated
inline capacity. :^)
|