# HG changeset patch # User William Astle # Date 1567119617 21600 # Node ID 733fd05ca2a88e4e26607a2d24905fce70f75e5c # Parent c3099c5d9d3ef92e49ea46efd2dcda5fd9b0be7d Initialize temporary line structures properly Apparently, not initializing all elements of a struct can lead to random problems if something somewhere decides it should reference one of those uninitialized fields. Who knew. Set the temporary line_t structure to zeroes before passing it into anything when calculating the stuff for "object" output which should at least make things predictable. This seems to fix a crash reported by "strick" in Discord. diff -r c3099c5d9d3e -r 733fd05ca2a8 lwasm/output.c --- a/lwasm/output.c Thu Aug 08 23:48:18 2019 -0600 +++ b/lwasm/output.c Thu Aug 29 17:00:17 2019 -0600 @@ -895,7 +895,7 @@ { int eval; lw_expr_t te; - line_t tl; + line_t tl = { 0 }; if (ex -> se == NULL) continue; @@ -930,7 +930,7 @@ { int offset; lw_expr_t te; - line_t tl; + line_t tl = { 0 }; tl.as = as; as -> cl = &tl;