From ea73b8863411814160ed48e1ce1ced86b5602119 Mon Sep 17 00:00:00 2001 From: Alban Peignier Date: Fri, 5 Sep 2014 09:46:01 +0200 Subject: [PATCH] Replace getenv("HOME") by RDGetHomeDir() in RDCartDialog::LoadState/SaveState. Create RDCartDialog::StateFile to share logic --- lib/rdcart_dialog.cpp | 26 +++++++++++++++++++++----- lib/rdcart_dialog.h | 1 + 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/lib/rdcart_dialog.cpp b/lib/rdcart_dialog.cpp index b803da45..0d4572e3 100644 --- a/lib/rdcart_dialog.cpp +++ b/lib/rdcart_dialog.cpp @@ -905,14 +905,29 @@ QString RDCartDialog::GetSearchFilter(const QString &filter, return search; } +QString RDCartDialog::StateFile() { + bool home_found = false; + QString home = RDGetHomeDir(&home_found); + if (home_found) { + return QString().sprintf("%s/.rdcartdialog",(const char *)home); + } else { + return NULL; + } +} void RDCartDialog::LoadState() { - if(getenv("HOME")==NULL) { + QString state_file = StateFile(); + if (state_file == NULL) { return; } + RDProfile *p=new RDProfile(); - p->setSource(QString().sprintf("%s/.rdcartdialog",getenv("HOME"))); + p->setSource(state_file); + + bool value_read = false; + cart_limit_box->setChecked(p->boolValue("RDCartDialog", "LimitSearch", true, &value_read)); + delete p; } @@ -921,11 +936,12 @@ void RDCartDialog::SaveState() { FILE *f=NULL; - if(getenv("HOME")==NULL) { + QString state_file = StateFile(); + if (state_file == NULL) { return; } - if((f=fopen(QString().sprintf("%s/.rdcartdialog",getenv("HOME")),"w"))== - NULL) { + + if((f=fopen(state_file,"w"))==NULL) { return; } fprintf(f,"[RDCartDialog]\n"); diff --git a/lib/rdcart_dialog.h b/lib/rdcart_dialog.h index 3a01e9f9..29c50675 100644 --- a/lib/rdcart_dialog.h +++ b/lib/rdcart_dialog.h @@ -84,6 +84,7 @@ class RDCartDialog : public QDialog void BuildGroupList(); QString GetSearchFilter(const QString &filter,const QString &group, const QString &schedcode); + QString StateFile(); void LoadState(); void SaveState(); int *cart_cartnum;