diff options
author | phk <phk@FreeBSD.org> | 2003-05-02 06:36:14 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-05-02 06:36:14 +0000 |
commit | 4c52a206d24421e6c4708baeba60bb6f9b88ebb4 (patch) | |
tree | f30ff1854b1e718bcb5d94f16dcee4c13b5afe1a /sys/geom/geom_aes.c | |
parent | 6b0e95eef5a40043ddb0bb6618b23b20c6da7ab4 (diff) | |
download | FreeBSD-src-4c52a206d24421e6c4708baeba60bb6f9b88ebb4.zip FreeBSD-src-4c52a206d24421e6c4708baeba60bb6f9b88ebb4.tar.gz |
Use g_slice_spoiled() rather than g_std_spoiled().
Remember to free the buffer we got from g_read_data().
Diffstat (limited to 'sys/geom/geom_aes.c')
-rw-r--r-- | sys/geom/geom_aes.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/geom/geom_aes.c b/sys/geom/geom_aes.c index 95055dd..0745624 100644 --- a/sys/geom/geom_aes.c +++ b/sys/geom/geom_aes.c @@ -251,11 +251,9 @@ g_aes_orphan(struct g_consumer *cp) gp = cp->geom; sc = gp->softc; - gp->flags |= G_GEOM_WITHER; - error = cp->provider->error; - LIST_FOREACH(pp, &gp->provider, provider) - g_orphan_provider(pp, error); + g_wither_geom(gp, cp->provider->error); bzero(sc, sizeof(struct g_aes_softc)); /* destroy evidence */ + g_free(sc); return; } @@ -323,9 +321,11 @@ g_aes_taste(struct g_class *mp, struct g_provider *pp, int flags __unused) strlen(aes_magic_test))) { sc->keying = KEY_TEST; } else { + g_free(buf); g_free(sc); break; } + g_free(buf); gp->softc = sc; gp->access = g_aes_access; sc->sectorsize = sectorsize; |