diff options
| author | Jordan K. Hubbard <jkh@FreeBSD.org> | 1999-02-16 01:58:04 +0000 |
|---|---|---|
| committer | Jordan K. Hubbard <jkh@FreeBSD.org> | 1999-02-16 01:58:04 +0000 |
| commit | d207e2138aa6df3717005151a3c333a96cf7aa4c (patch) | |
| tree | d15737c0d75b3cacebb8319c185cee9e8507befd | |
| parent | 6b4286e0f546e248c78cebda8bb680bf51b26ca0 (diff) | |
Notes
| -rw-r--r-- | release/sysinstall/kget.c | 11 | ||||
| -rw-r--r-- | usr.sbin/sysinstall/kget.c | 11 |
2 files changed, 14 insertions, 8 deletions
diff --git a/release/sysinstall/kget.c b/release/sysinstall/kget.c index d92a425fc06d..7dc207c46943 100644 --- a/release/sysinstall/kget.c +++ b/release/sysinstall/kget.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kget.c,v 1.1 1999/01/20 12:31:43 jkh Exp $ + * $Id: kget.c,v 1.2 1999/02/15 07:07:37 jkh Exp $ */ #include "sysinstall.h" @@ -97,18 +97,18 @@ kget(char *out) } i += sizeof(struct isa_device) + 8; } - free(buf); + free(buf), buf = NULL; /* Now, print the changes to PnP override table */ i = sysctlbyname(mib2, NULL, &len, NULL, NULL); if (i) { msgDebug("kget: error sizing buffer\n"); - return -1; + goto bail; } buf = (char *)malloc(len * sizeof(char)); i = sysctlbyname(mib2, buf, &len, NULL, NULL); if (i) { msgDebug("kget: error retrieving data\n"); - return -1; + goto bail; } i = 0; /* Print the PnP override table. Taken from userconfig.c */ @@ -141,7 +141,10 @@ kget(char *out) bytes_written += fprintf(fout,"\n"); } } while ((i += sizeof(struct pnp_cinfo)) < len); +bail: fprintf(fout, "q\n"); fclose(fout); + if (buf) + free(buf); return 0; } diff --git a/usr.sbin/sysinstall/kget.c b/usr.sbin/sysinstall/kget.c index d92a425fc06d..7dc207c46943 100644 --- a/usr.sbin/sysinstall/kget.c +++ b/usr.sbin/sysinstall/kget.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: kget.c,v 1.1 1999/01/20 12:31:43 jkh Exp $ + * $Id: kget.c,v 1.2 1999/02/15 07:07:37 jkh Exp $ */ #include "sysinstall.h" @@ -97,18 +97,18 @@ kget(char *out) } i += sizeof(struct isa_device) + 8; } - free(buf); + free(buf), buf = NULL; /* Now, print the changes to PnP override table */ i = sysctlbyname(mib2, NULL, &len, NULL, NULL); if (i) { msgDebug("kget: error sizing buffer\n"); - return -1; + goto bail; } buf = (char *)malloc(len * sizeof(char)); i = sysctlbyname(mib2, buf, &len, NULL, NULL); if (i) { msgDebug("kget: error retrieving data\n"); - return -1; + goto bail; } i = 0; /* Print the PnP override table. Taken from userconfig.c */ @@ -141,7 +141,10 @@ kget(char *out) bytes_written += fprintf(fout,"\n"); } } while ((i += sizeof(struct pnp_cinfo)) < len); +bail: fprintf(fout, "q\n"); fclose(fout); + if (buf) + free(buf); return 0; } |
