diff options
author | Jim Young <jyoung@gsu.edu> | 2019-12-10 22:01:16 -0500 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2019-12-16 05:34:28 +0000 |
commit | 8fbe28b1f0b24fee1e1a27ccdb6b8f893c43f133 (patch) | |
tree | 3d0f4308950d2f14a7fb549681ea6bd25fdd73a4 /ui/preference_utils.c | |
parent | d90a22c1cc3a6eaf739e9f4b40ea276dbc916d62 (diff) |
profiles: Try to better sync on disk config state
Profile specific column settings are split across the `preferences'
file and the `recent' file. At any given moment the GUI column
settings held within the `preferences' file and the `recent' file
may be inconsistent with one another and with the GUI itself. These
inconsistencies occur because of when the GUI chooses to write
config changes to disk.
If Wireshark is not shutdown gracefully (for example when killed
or should crash) the column preferences saved on disk may not be
consistent between the current profile's `preferences` and `recent`
files and the most recently used profile may not be recorded within
the `recent_common' file. On restarting Wireshark these config file
inconsistencies can lead to unexpected artifacts.
Normally the column config state saved within the current profile's
`preferences' and `recent` files are made consistent when a
different profile is selected or when Wireshark is closed
gracefully.
This patch set attempts to improve the constancy of the on disk
config state with the GUI state by invoking the functions to write
the `recent' and `recent_common' files in a more timely manner.
Fix a typo while here.
Change-Id: I2af9d9eb2dcf9cc0d422e9840aa05f4f6b1aa086
Reviewed-on: https://code.wireshark.org/review/35407
Petri-Dish: Jim Young <jim.young.ws@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Jim Young <jim.young.ws@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'ui/preference_utils.c')
-rw-r--r-- | ui/preference_utils.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ui/preference_utils.c b/ui/preference_utils.c index 70684f5a55..404c13c997 100644 --- a/ui/preference_utils.c +++ b/ui/preference_utils.c @@ -19,6 +19,7 @@ #include <epan/packet.h> #include <epan/decode_as.h> #include <epan/uat-int.h> +#include <ui/recent.h> #ifdef HAVE_LIBPCAP #include "capture_opts.h" @@ -62,7 +63,7 @@ prefs_main_write(void) g_strerror(errno)); g_free(pf_dir_path); } else { - /* Write the preferencs out. */ + /* Write the preferences out. */ err = write_prefs(&pf_path); if (err != 0) { simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, @@ -70,6 +71,9 @@ prefs_main_write(void) g_strerror(err)); g_free(pf_path); } + /* Write recent and recent_common files out to ensure sync with prefs. */ + write_profile_recent(); + write_recent(); } } |