These bugs all exist in stock Magic but were tolerated by the K&R-loose
native build. The strict WASM call_indirect type checks turned them up.
* cif/CIFhier.c: ASSERT in cifFlatMaskHints accessed
oldproprec->prop_value.prop_type, but prop_type is a top-level member
of PropertyRecord. Changed to oldproprec->prop_type.
* extflat/EFargs.c: efLoadSearchPath was assigning a pointer to a
string literal ("." in RO data), which callers later try to free or
StrDup. Replaced with StrDup(path, ".") so the pointer always lives
on the heap.
* router/rtrVia.c: rtrFollowName called RtrMilestonePrint("#"), but
the function takes no arguments.
* sim/SimSelect.c: SimAddLabels called DBWLabelChanged with five
arguments, but its real signature is (CellDef *, Label *, int).
Replaced with the equivalent DBWAreaChanged call.
* windows/windView.c: extern declaration of DBMovePoint had return
type void, but the function actually returns bool.
|
||
|---|---|---|
| .. | ||
| CIFgen.c | ||
| CIFhier.c | ||
| CIFint.h | ||
| CIFmain.c | ||
| CIFrdcl.c | ||
| CIFrdpoly.c | ||
| CIFrdpt.c | ||
| CIFrdtech.c | ||
| CIFrdutils.c | ||
| CIFread.h | ||
| CIFsee.c | ||
| CIFtech.c | ||
| CIFwrite.c | ||
| Makefile | ||
| cif.h | ||