author | eilers <eilers> | 2003-03-24 17:24:44 (UTC) |
---|---|---|
committer | eilers <eilers> | 2003-03-24 17:24:44 (UTC) |
commit | 84372ba20c0b1b09c1606212ec66c9d04588b90e (patch) (unidiff) | |
tree | 36c4d861596c80b537c765af3f0c16495a763cc6 /library | |
parent | 38d8d91e11c191f89429f4a3da8c1ada84b2a885 (diff) | |
download | opie-84372ba20c0b1b09c1606212ec66c9d04588b90e.zip opie-84372ba20c0b1b09c1606212ec66c9d04588b90e.tar.gz opie-84372ba20c0b1b09c1606212ec66c9d04588b90e.tar.bz2 |
Small anti-crash fix: Sync with QtopiaDesktop caused a big mess. But this
mess should't crash datebook. Therefore this fix prevents datebook to
hang if rweekdays=="0"
-rw-r--r-- | library/datebookdb.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/library/datebookdb.cpp b/library/datebookdb.cpp index a26fe8f..0fedfa8 100644 --- a/library/datebookdb.cpp +++ b/library/datebookdb.cpp | |||
@@ -820,49 +820,54 @@ void DateBookDB::loadFile( const QString &strFile ) | |||
820 | e.setType( Event::Normal ); | 820 | e.setType( Event::Normal ); |
821 | break; | 821 | break; |
822 | case FAlarm: | 822 | case FAlarm: |
823 | alarmTime = value.toInt(); | 823 | alarmTime = value.toInt(); |
824 | break; | 824 | break; |
825 | case FSound: | 825 | case FSound: |
826 | alarmSound = value == "loud" ? Event::Loud : Event::Silent; | 826 | alarmSound = value == "loud" ? Event::Loud : Event::Silent; |
827 | break; | 827 | break; |
828 | // recurrence stuff | 828 | // recurrence stuff |
829 | case FRType: | 829 | case FRType: |
830 | if ( value == "Daily" ) | 830 | if ( value == "Daily" ) |
831 | rp.type = Event::Daily; | 831 | rp.type = Event::Daily; |
832 | else if ( value == "Weekly" ) | 832 | else if ( value == "Weekly" ) |
833 | rp.type = Event::Weekly; | 833 | rp.type = Event::Weekly; |
834 | else if ( value == "MonthlyDay" ) | 834 | else if ( value == "MonthlyDay" ) |
835 | rp.type = Event::MonthlyDay; | 835 | rp.type = Event::MonthlyDay; |
836 | else if ( value == "MonthlyDate" ) | 836 | else if ( value == "MonthlyDate" ) |
837 | rp.type = Event::MonthlyDate; | 837 | rp.type = Event::MonthlyDate; |
838 | else if ( value == "Yearly" ) | 838 | else if ( value == "Yearly" ) |
839 | rp.type = Event::Yearly; | 839 | rp.type = Event::Yearly; |
840 | else | 840 | else |
841 | rp.type = Event::NoRepeat; | 841 | rp.type = Event::NoRepeat; |
842 | break; | 842 | break; |
843 | case FRWeekdays: | 843 | case FRWeekdays: |
844 | // QtopiaDesktop 1.6 sometimes creates 'rweekdays="0"' | ||
845 | // when it goes mad. This causes datebook to crash.. (se) | ||
846 | if ( value.toInt() != 0 ) | ||
844 | rp.days = value.toInt(); | 847 | rp.days = value.toInt(); |
848 | else | ||
849 | rp.days = 1; | ||
845 | break; | 850 | break; |
846 | case FRPosition: | 851 | case FRPosition: |
847 | rp.position = value.toInt(); | 852 | rp.position = value.toInt(); |
848 | break; | 853 | break; |
849 | case FRFreq: | 854 | case FRFreq: |
850 | rp.frequency = value.toInt(); | 855 | rp.frequency = value.toInt(); |
851 | break; | 856 | break; |
852 | case FRHasEndDate: | 857 | case FRHasEndDate: |
853 | rp.hasEndDate = value.toInt(); | 858 | rp.hasEndDate = value.toInt(); |
854 | break; | 859 | break; |
855 | case FREndDate: { | 860 | case FREndDate: { |
856 | rp.endDateUTC = (time_t) value.toLong(); | 861 | rp.endDateUTC = (time_t) value.toLong(); |
857 | break; | 862 | break; |
858 | } | 863 | } |
859 | case FRStart: { | 864 | case FRStart: { |
860 | e.setStart( (time_t) value.toLong() ); | 865 | e.setStart( (time_t) value.toLong() ); |
861 | break; | 866 | break; |
862 | } | 867 | } |
863 | case FREnd: { | 868 | case FREnd: { |
864 | e.setEnd( (time_t) value.toLong() ); | 869 | e.setEnd( (time_t) value.toLong() ); |
865 | break; | 870 | break; |
866 | } | 871 | } |
867 | case FNote: | 872 | case FNote: |
868 | e.setNotes( value ); | 873 | e.setNotes( value ); |