We have to free up the per-frame data when we rescan, because we have

called packet_init_proto, which blows away the items the list points to.

svn path=/trunk/; revision=2408
This commit is contained in:
Richard Sharpe 2000-09-11 07:33:56 +00:00
parent 332d5715e8
commit bf98417be0
2 changed files with 12 additions and 2 deletions

11
file.c
View File

@ -1,7 +1,7 @@
/* file.c
* File I/O routines
*
* $Id: file.c,v 1.217 2000/09/10 06:44:33 guy Exp $
* $Id: file.c,v 1.218 2000/09/11 07:33:55 sharpe Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -981,6 +981,15 @@ rescan_packets(capture_file *cf, const char *action, gboolean refilter,
fdata->pfd = NULL;
}
/* If there is any per-frame data, delete that, as what it points to
* has gone as well.
*/
if (fdata->pfd) {
g_slist_free(fdata->pfd);
fdata->pfd = NULL;
}
wtap_seek_read (cf->wth, fdata->file_off, &cf->pseudo_header,
cf->pd, fdata->cap_len);

View File

@ -9,7 +9,7 @@
* the data of a backing tvbuff, or can be a composite of
* other tvbuffs.
*
* $Id: tvbuff.c,v 1.12 2000/09/08 09:54:20 guy Exp $
* $Id: tvbuff.c,v 1.13 2000/09/11 07:33:56 sharpe Exp $
*
* Copyright (c) 2000 by Gilbert Ramirez <gram@xiexie.org>
*
@ -37,6 +37,7 @@
#include "pint.h"
#include "tvbuff.h"
#include "packet.h"
typedef struct {