Fix memory leak in error path of RECODE
[pspp] / src / language / xforms / recode.c
index 2849ea32d1510eb74f518506728edf65484bd401..a1c2f7a4493a9413fff250e8d2bddfda488ded48 100644 (file)
@@ -160,6 +160,7 @@ cmd_recode (struct lexer *lexer, struct dataset *ds)
        {
          if ( ! enlarge_dst_widths (trns))
            {
+             recode_trns_free (trns);
              return CMD_FAILURE;
            }
        }
@@ -563,7 +564,7 @@ enlarge_dst_widths (struct recode_trns *trns)
            {
              msg (ME, 
                   _("Cannot recode because the variable %s would require a width of %d bytes or greater, but it has a width of only %d bytes."),
-                  var_get_name (narrow_var), out->width, trns->max_dst_width);
+                  var_get_name (narrow_var), out->width, min_dst_width);
              return false;
            }