Wireshark mailing list archives
Re: What is the use of pointer "cap_file_" in QtShark
From: Guy Harris <guy () alum mit edu>
Date: Wed, 22 May 2013 11:50:00 -0700
On May 22, 2013, at 10:21 AM, Richard Turner <turner () yiran org> wrote:
In Wireshark/ui/qt/main_window.h there is a private member variable defined as: capture_file *cap_file_; I think it's a pointer to the global variable "cfile"
Currently, yes. We make no claim that Wireshark will, forever, have only one main window and only one capture file open, so it should not be treated as if it is, inherently, just a pointer to cfile.
(defined in tshark.c).
Yes, it's defined there, but tshark.c, as the name suggests, is not linked into Wireshark, it's linked into TShark; the cfile in QtShark is defined in ui/qt/main.cpp (and in GTKShark is defined in ui/gtk/main.c).
Is it true that we keep this pointer only to verify the validity of cfile (we set cap_file_ to NULL when the capture file is closed)?
No, we keep it around to make the code cleaner (and a tiny bit easier to make into something that behaves like a Real OS X Application, in which one process handles all open files and captures; "tiny bit" because that's about .001% of the work involved - the *big* work is to get rid of, for example, global variables in libwireshark and plugin dissectors). "Global variables considered harmful". ___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev () wireshark org> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-request () wireshark org?subject=unsubscribe
Current thread:
- What is the use of pointer "cap_file_" in QtShark Richard Turner (May 22)
- Re: What is the use of pointer "cap_file_" in QtShark Guy Harris (May 22)
- Re: What is the use of pointer "cap_file_" in QtShark Gerald Combs (May 22)