summaryrefslogtreecommitdiff
path: root/print.c
diff options
context:
space:
mode:
authorKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>2009-09-26 05:25:42 +0000
committerKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>2009-09-26 05:25:42 +0000
commita46d38a07da451ba05cc40853f76b03976a5e31f (patch)
tree7800ea9acfab749a374ec7ddfc11d23e831b224e /print.c
parent4c3ad6faa9ed0d3fbbd2df518aa5fba6a56cf5ec (diff)
downloadwireshark-a46d38a07da451ba05cc40853f76b03976a5e31f.tar.gz
Introduce print_stream_text_alloc() and start using it
svn path=/trunk/; revision=30163
Diffstat (limited to 'print.c')
-rw-r--r--print.c31
1 files changed, 14 insertions, 17 deletions
diff --git a/print.c b/print.c
index d1fa5fc90e..17fa8b70b2 100644
--- a/print.c
+++ b/print.c
@@ -1072,17 +1072,12 @@ static const print_stream_ops_t print_text_ops = {
destroy_text
};
-print_stream_t *
-print_stream_text_new(int to_file, const char *dest)
+static print_stream_t *
+print_stream_text_allow(int to_file, FILE *fh)
{
- FILE *fh;
print_stream_t *stream;
output_text *output;
- fh = open_print_dest(to_file, dest);
- if (fh == NULL)
- return NULL;
-
output = g_malloc(sizeof *output);
output->to_file = to_file;
output->fh = fh;
@@ -1094,19 +1089,21 @@ print_stream_text_new(int to_file, const char *dest)
}
print_stream_t *
-print_stream_text_stdio_new(FILE *fh)
+print_stream_text_new(int to_file, const char *dest)
{
- print_stream_t *stream;
- output_text *output;
+ FILE *fh;
- output = g_malloc(sizeof *output);
- output->to_file = TRUE;
- output->fh = fh;
- stream = g_malloc(sizeof (print_stream_t));
- stream->ops = &print_text_ops;
- stream->data = output;
+ fh = open_print_dest(to_file, dest);
+ if (fh == NULL)
+ return NULL;
- return stream;
+ return print_stream_text_allow(to_file, fh);
+}
+
+print_stream_t *
+print_stream_text_stdio_new(FILE *fh)
+{
+ return print_stream_text_allow(TRUE, fh);
}
typedef struct {