Ethereal-dev: [Ethereal-dev] Ethereal 0.9.1 : option -B non-functional

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Emmanuel Kowalski <egkowal@xxxxxxxxxxxxx>
Date: Mon, 4 Feb 2002 15:12:15 +0100
Hello,

  I downloaded and compiled ethereal 0.9.1 on my RedHat 7.0 system this 
week-end. Because I use it mostly to debug client-server interactions
through HTTP, the most informative part of the display is the data pane
which is very small (~ 3 lines) by default. It seemed that the -B option
should be used to change this, e.g.

	# ethereal -B 300

but I couldn't see any effect from this. I looked at the source code, and
in fact it seems that the -B switch is non-functional : in gtk/main.c the
-B parameter is passed as bv_size to create_main_window(), then to
create_byte_view() in gtk/proto_draw.c, but that function doesn't use this
parameter.

  I fiddled with it and patched it enough for me, but I'm no expert in gtk
programming so the solution is unlikely to be acceptable [ I created a
global var. in proto_draw.c in which bv_size is saved in create_byte_view,
and by analogy with other lines of the code I could see, I added a 

	  gtk_widget_set_usize(byte_scrollw, -1, global_bv_size);

in the function add_byte_tab (still in gtk/proto_draw.c). ] It works for
me at least(see full diff -u below).

Please cc. directly to me since I am not a subscriber to the list.

	Emmanuel Kowalski

-------------------------
--- ethereal-0.9.1/gtk/proto_draw.c     Tue Jan 22 23:57:36 2002
+++ ethereal-0.9.1-patch/gtk/proto_draw.c       Mon Feb  4 15:03:15 2002
@@ -63,6 +63,8 @@
 #define BYTE_VIEW_WIDTH    16
 #define BYTE_VIEW_SEP      8
 
+static gint global_bv_size = 75;
+
 static void
 proto_tree_draw_node(GNode *node, gpointer data);
 
@@ -350,6 +352,8 @@
 {
   GtkWidget *byte_scrollw, *byte_nb;
 
+  global_bv_size = bv_size;
+
   byte_nb = gtk_notebook_new();
   gtk_notebook_set_tab_pos ( GTK_NOTEBOOK(byte_nb), GTK_POS_BOTTOM);
 
@@ -394,6 +398,8 @@
   gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(byte_scrollw),
                        /* Vertical*/   GTK_POLICY_ALWAYS);
+
+  gtk_widget_set_usize(byte_scrollw, -1, global_bv_size);
   gtk_widget_show(byte_scrollw);
 
   byte_view = gtk_text_new(NULL, NULL);