]> granicus.if.org Git - graphviz/commitdiff
expr scan: cast 'integer' field when accessing file handles
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Wed, 4 Jan 2023 04:09:36 +0000 (20:09 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sun, 8 Jan 2023 19:57:18 +0000 (11:57 -0800)
Squashes 2 -Wsign-conversion warnings. These values are known to be in range
here.

lib/expr/exeval.c

index 4ae981bf0b5c6ebfc9a55a2d5b52ee2488e68136..ce6e1cc5a5ba1ff7fe64c3cba97c8c781a68b726 100644 (file)
@@ -516,7 +516,7 @@ scan(Expr_t* ex, Exnode_t* expr, void* env, Sfio_t* sp)
                }
                else
                        v.integer = 0;
-               if (v.integer < 0 || v.integer >= elementsof(ex->file) || (!(sp = ex->file[v.integer]) && !(sp = ex->file[v.integer] = sfnew(NULL, NULL, SF_UNBOUND, v.integer, SF_READ|SF_WRITE))))
+               if (v.integer < 0 || (size_t)v.integer >= elementsof(ex->file) || (!(sp = ex->file[v.integer]) && !(sp = ex->file[v.integer] = sfnew(NULL, NULL, SF_UNBOUND, (int)v.integer, SF_READ|SF_WRITE))))
                {
                        exerror("scanf: %" PRIdMAX ": invalid descriptor", (intmax_t)v.integer);
                        return 0;