Commits


9c: Fix case patterns for DragonFly and other BSDs POSIX does not support grouping in case item patterns. Installing with a strict POSIX shell fails with: /usr/local/plan9/bin/9c: line 82: syntax error near unexpected token `(' /usr/local/plan9/bin/9c: line 82: `*(DragonFly|BSD)*gcc*) usegcc ;;' This change expands the patterns to work around the limitation. See https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_10 (and search for case_clause)


lib9, libndb: exclude terminating null from strncpy bound GCC pointed this out with some "warning: ‘strncpy’ specified bound NUM equals destination size [-Wstringop-truncation]" warnings. Change-Id: Id8408b165f6e4ae82c96a77599d89f658d979b32


lib9: remove getcallerpc implementations These make no sense and are not really needed at all. Add a best-effort attempt to get at the gcc/clang macro in lib9.h, but if it fails, no big deal. Fixes #324.


libmach: plug another memory leak Change-Id: Ia5c888db1f0ded2aa92238d994239e46bf52667a


libmach: plug memory leak Change-Id: I08cb7227c071c7fc2e30f43e07bcf599fc1d174a


9term: add a "look" menu item (#299) Add a menu item which functions similar to acme's `Look` command. This is copied from 9front. See: https://code.9front.org/hg/plan9front/rev/1f1596dbca51 https://code.9front.org/hg/plan9front/rev/d2de1d2f7b48


INSTALL, 9c, 9l: improve handling of *BSD (#302)


all: sync and dedup the creation of the SYSNAME and OBJTYPE env vars (#321) This should prevent the issues of dist/buildmk and src/mkhdr getting out of synchronization yet again. I also add a rule for arm64 to the OBJTYPE sed command. Fixes #243 Fixes #320 Change-Id: I60f69a1f32b5ed5ae5ac8a1659c38e29debed005


acme(1): update man page to note -a trimming trailing spaces on Put


cmd/htmlroff: fix buffer overflow in t2.c getqarg This is actually from 2016: https://plan9port-review.googlesource.com/c/plan9/+/1590 Change-Id: I6f2a3d71a9dd589eff7ab15b3c1d3997254b3c35


ls: check that pointer is not nil before calling qsort Passing a null pointer to qsort is an error in C (GCC and Clang agree with the standards there, so this is no joke). Change-Id: Ia2b015793a75ea4e85ae8f47da6beead9c4290e6


acme: do not pass null pointers where disallowed The C standards disallow passing null pointers to memmove and memcmp. Change-Id: I1c88c2adbc32a23ef742f206038b8f7c4e0540c7


cmd/rc: fix declarations of some externally linked variables Change-Id: If8fe1afecb9fe55f85e8e5af37521b83e787d718


cb: fix a null pointer dereference Just added a pair of parentheses. I also ran cb on cb.c to beautify the code. This is actually on Gerrit from 2016: https://plan9port-review.googlesource.com/c/plan9/+/1574 Change-Id: I5e234adba0f95c13d6eecb121bf11bba4bf54566


sam: report close error