The patch below prevents a crash in the xforms frontend when launching the File Browser dialog from the External dialog.
The problem was that this string, used to specify the file filter: "*.(gif|png|jpg|bmp|pbm|ppm|tga|tif|xpm|xbm)" was being modified in ControlExternal to this: "*.(gif|png|jpg|bmp|pbm|ppm|tga|tif|xpm" Converting this glob to a regex: ".*\.(gif|png|jpg|bmp|pbm|ppm|tga|tif|xpm" lead to boost::regex bailing out (invalid regex --- no closing ')'). Clearly, the code I've removed was put there for a reason, but I think that it is now redundant. Any objections if I simply remove it? However, the main point of this mail is to ask what I need to do to get the Qt frontend to understand the filter "*.(gif|png|jpg|bmp|pbm|ppm|tga|tif|xpm|xbm)" Any idea what the Qt-version would need to be? Angus diff -u -p -r1.30 FileDialog.C --- src/frontends/xforms/FileDialog.C 6 Oct 2003 15:42:53 -0000 1.30 +++ src/frontends/xforms/FileDialog.C 29 Dec 2003 18:20:11 -0000 @@ -65,14 +65,8 @@ FileDialog::Result const FileDialog::ope FileDialog::Result const FileDialog::open(string const & path, string const & mask, string const & suggested) { string filter = mask; - - if (mask.empty()) - filter = _("*"); - else { - rsplit(mask, filter, '|'); - if (filter.empty()) - filter = mask; - } + if (filter.empty()) + filter = "*"; lyxerr[Debug::GUI] << "filedialog open with path \"" << path << "\", mask \"" << filter << "\", suggested \"" << suggested << '"' << endl;