Commits
- Commit:
005ee081d50b14a9a12a5b93f4a8760d7700e032
- From:
- camsn0w <camhconnell@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
Added a paren to fix a warning in u.h
- Commit:
8d5bcf7e1e6c7c3ee9b833da4993776f005d6e6b
- From:
- lufia <lufia@lufia.org>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
factotum: plug a memory leak in apop
- Commit:
1fcdefc5854ff5708ad545eb047075838eda55ff
- From:
- Xiao-Yong Jin <xjin@anl.gov>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
fontsrv: always compute new height and ascent for the font file
- Commit:
85bfd19a7beb628f24b051d23e6c94ecc6e4babc
- From:
- Xiao-Yong Jin <xjin@anl.gov>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
devdraw/x11: fix modifier key handling for some XkbOptions
Certain XkbOptions in X11 would change keysyms for modifier keys
between the key press and key release.
For example, under the XkbOptions "grp:shifts_toggle", though shift
keys remain Shift_L/R when pressed, they become ISO_Group_Next/Prev
when released.
This behavior makes devdraw unable to detect the release event
correctly and as a result mouse button 1 click always interpreted
as button 3 event after a shift key is used.
- Commit:
07b24459ea4f06f7e86b7c4557eea5b451354575
- From:
- Igor Böhm <boehm.igor@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
Bail out if convW2M(...) indicates failure.
- Commit:
d92ac2d1b424e059e8e81d6dd58f0ac195fe3253
- From:
- Igor Böhm <boehm.igor@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
libdraw: fix out-of-bounds access to local buffer in event.c:startrpc()
The function `startrpc()` stack allocates a local buffer of size 100:
```c
static Muxrpc*
startrpc(int type)
{
uchar buf[100];
^^^^^^^^
Wsysmsg w;
w.type = type;
convW2M(&w, buf, sizeof buf);
return muxrpcstart(display->mux, buf);
}
```
The function `convW2M()` is called passing `buf`. That function accesses
`buf` out-of-bounds:
```c
uint
convW2M(Wsysmsg *m, uchar *p, uint n)
{
...
case Tcursor2:
PUT(p+6, m->cursor.offset.x);
PUT(p+10, m->cursor.offset.y);
memmove(p+14, m->cursor.clr, sizeof m->cursor.clr);
memmove(p+46, m->cursor.set, sizeof m->cursor.set);
PUT(p+78, m->cursor2.offset.x);
PUT(p+82, m->cursor2.offset.y);
memmove(p+86, m->cursor2.clr, sizeof m->cursor2.clr);
memmove(p+214, m->cursor2.set, sizeof m->cursor2.set);
p[342] = m->arrowcursor;
^^^^^^
```
To fix the issue the size of local variable `buf` is increased from 100
to 512 to avoid out-of-bounds array access.
- Commit:
2ca8ede24ada82f22a77ab172a0a8214f623dc94
- From:
- Fazlul Shahriar <fshahriar@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
fossil: fix EOF detection when reading 9P message
When the 9P connection is closed, reads on the connection will keep
returning 0. So, fossil ends up looping forever, trying to read a 9P
message, consuming 100% CPU. The fix interprets 0 bytes read as EOF.
Reproduce by killing the 9pserve process serving the fossil service, or
by listening on tcp and using 9p(1).
- Commit:
23420c24937a8899bf1cfb900b9a5155b6f924ae
- From:
- mmnmnnmnmm <45293514+mmnmnnmnmm@users.noreply.github.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
deroff: fix out-of-bounds access if runes above 0X80 are inside EQ clauses
- Commit:
a2422a89c5ef6cffd71599aaa0af47423eb5a7f9
- From:
- Andriy Symonovych <sima.rv@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
trim button & modbutton images
- Commit:
6f35cfa6b6aad61371534fd3da727a32fa393f80
- From:
- Andriy Symonovych <sima.rv@gmail.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
make sure border has correct height
- Commit:
bb4b8acc26034791cb60bddf66924babb22e4522
- From:
- Kyle Nusbaum <kyle@datadog.com>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
src/cmd/fontsrv: pad subfile names to support correct file length
For fonts with subfiles that go beyond the xffff range, the font file size
calculation is incorrect, since lines beyond that range have additional
characters. This patch pads all of the ranges and subfont names with
leading zeros in order to keep them all lines the same length and fixes the
font file length calculation.
- Commit:
686f5d035cc111a6a18d918ef60929f24b0cb424
- From:
- Ben Huntsman <ben@huntsmans.net>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
acme: Don't move the mouse if button depressed
Fixes #19
- Commit:
964ac74cdc9d9bd22aec10bba850db93c4445cc5
- From:
- Ori Bernstein <ori@eigenstate.org>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
rc: remove dead code.
kencc warns that this code is dead.
- Commit:
8bf462f339e0d6d79f94669f3252fb3580e16e51
- From:
- Ben Huntsman <ben@huntsmans.net>
- Via:
- Dan Cross <crossd@gmail.com>
- Date:
man/man3/stat.3: Update man page to match include/libc.h. Resolves Issue #530
- Commit:
bab7b73b85f865d20a5c4f2d78ac9e81b3d39109
- From:
- Russ Cox <rsc@swtch.com>
- Date:
INSTALL: build arm64 binaries on arm64 Macs
If there is any x86 binary in the chain of parent processes from
the current one, then uname -m prints x86_64 and clang
defaults to building x86_64 binaries.
Detect arm64 using the kernel version and force building
an arm64 toolchain instead of perpetuating x86.
This is particularly important when the user shell is rc,
which has been built for x86, because then rebuilding
under rc continues to use x86.