From 981fd408e7edb6013cc506e8de0bac17a3a1a02a Mon Sep 17 00:00:00 2001 From: Ricardo Mones Date: Mon, 12 Sep 2016 00:55:21 +0200 Subject: [PATCH 1/1] Load resources using generic functions MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit UTF-8 data saving is broken now… --- clawsker | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/clawsker b/clawsker index 8e5aade..dcbd114 100755 --- a/clawsker +++ b/clawsker @@ -227,6 +227,11 @@ sub _ { e_running => _('seems Claws Mail is currently running, close it first.'), ); +# data and metadata of resource files +my $CONFIGDATA; +my $CONFIGMETA; +my $ACCOUNTDATA; +my $ACCOUNTMETA; # all preferences read by load_preferences my %PREFS = (); my %ACPREFS = (); @@ -2083,14 +2088,10 @@ sub load_preferences { log_message ("Loading preferences from $rc\n"); return FALSE unless check_rc_file ($rc); return FALSE unless check_claws_not_running (); - open (RCF, "<$rc"); - while () { - chomp; - if (/^([8a-z_]+)=(.*)$/) { - $PREFS{$1} = decode('UTF-8', $2); - } + ($CONFIGDATA, $CONFIGMETA) = load_resource ($rc); + foreach (keys %{$CONFIGDATA->{'Common'}}) { + $PREFS{$_} = $CONFIGDATA->{'Common'}{$_}; } - close (RCF); return TRUE; } @@ -2099,19 +2100,14 @@ sub load_ac_preferences { log_message ("Loading account preferences from $rc\n"); return FALSE unless check_rc_file ($rc); return FALSE unless check_claws_not_running (); - open (RCF, "<$rc"); - my $akey; - while () { - chomp; - if (/^\[Account: (\d+)\]$/) { - $akey = $1; - next; - } - if (/^([8a-z_]+)=(.*)$/) { - $ACPREFS{$akey}{$1} = decode('UTF-8', $2); + ($ACCOUNTDATA, $ACCOUNTMETA) = load_resource ($rc); + foreach my $asect (keys %$ACCOUNTDATA) { + if ($asect =~ /^Account: (\d+)$/) { + foreach (keys %{$ACCOUNTDATA->{$asect}}) { + $ACPREFS{$1}{$_} = $ACCOUNTDATA->{$asect}{$_}; + } } } - close (RCF); return TRUE; } -- 2.25.1