diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index 2b7da9fd7a..522f1c2418 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -1,3 +1,7 @@ +2003-08-17 Martin Vermeer + + * FormDocument.C: fix crash on doc settings for non-branched doc + 2003-08-28 Angus Leeming * RadioButtonGroup.[Ch] (unset, setEnabled): new functions extending diff --git a/src/frontends/xforms/FormDocument.C b/src/frontends/xforms/FormDocument.C index c78e77c713..0c2df39091 100644 --- a/src/frontends/xforms/FormDocument.C +++ b/src/frontends/xforms/FormDocument.C @@ -1319,8 +1319,11 @@ void FormDocument::branch_update(BufferParams const & params) fl_addto_browser(branch_->browser_all_branches, vec[i].c_str()); } fl_select_browser_line(branch_->browser_all_branches, 1); - current_branch = - fl_get_browser_line(branch_->browser_all_branches, 1); + if (!vec.empty()) + current_branch = + fl_get_browser_line(branch_->browser_all_branches, 1); + else + current_branch = "none"; } // display proper selection... @@ -1334,7 +1337,11 @@ void FormDocument::branch_update(BufferParams const & params) } // display proper colour... RGBColor rgb; - string x11hexname = params.branchlist.getColor(current_branch); + string x11hexname; + if (current_branch == "none") + x11hexname = "none"; + else + x11hexname = params.branchlist.getColor(current_branch); if (x11hexname[0] == '#') { rgb = RGBColor(x11hexname); } else {