<< content.size() << " packages" << endl;
- // parse selections
- p = provideFile(_path + "suse/setup/descr/selections");
-
- std::ifstream sels (p.asString().c_str());
+ bool file_found = true;
- while (sels && !sels.eof())
+ // parse selections
+ try {
+ p = provideFile(_path + "suse/setup/descr/selections");
+ } catch (...)
{
- std::string selfile;
+ MIL << "'selections' file not found" << endl;
+
+ file_found = false;
+ }
+
+ if (file_found)
+ {
+ std::ifstream sels (p.asString().c_str());
+
+ while (sels && !sels.eof())
+ {
+ std::string selfile;
- getline(sels,selfile);
+ getline(sels,selfile);
- if (selfile.empty() ) continue;
+ if (selfile.empty() ) continue;
- DBG << "Going to parse selection " << selfile << endl;
+ DBG << "Going to parse selection " << selfile << endl;
- Pathname file = provideFile(_path + "suse/setup/descr/" + selfile);
- MIL << "Selection file to parse " << file << endl;
+ Pathname file = provideFile(_path + "suse/setup/descr/" + selfile);
+ MIL << "Selection file to parse " << file << endl;
- Selection::Ptr sel( parseSelection( file ) );
+ Selection::Ptr sel( parseSelection( file ) );
- DBG << "Selection:" << sel << endl;
+ DBG << "Selection:" << sel << endl;
- if (sel)
- _store.insert( sel );
+ if (sel)
+ _store.insert( sel );
- DBG << "Parsing of " << file << " done" << endl;
+ DBG << "Parsing of " << file << " done" << endl;
+ }
}
// parse patterns
- p = provideFile(_path + "suse/setup/descr/patterns");
-
- std::ifstream pats (p.asString().c_str());
+ file_found = true;
+
+ try {
+ p = provideFile(_path + "suse/setup/descr/patterns");
+ } catch (...)
+ {
+ MIL << "'patterns' file not found" << endl;
+ file_found = false;
+ }
- while (pats && !pats.eof())
+ if ( file_found )
{
- std::string patfile;
+ std::ifstream pats (p.asString().c_str());
- getline(pats,patfile);
+ while (pats && !pats.eof())
+ {
+ std::string patfile;
- if (patfile.empty() ) continue;
+ getline(pats,patfile);
- DBG << "Going to parse pattern " << patfile << endl;
+ if (patfile.empty() ) continue;
- Pathname file = provideFile(_path + "suse/setup/descr/" + patfile);
- MIL << "Pattern file to parse " << file << endl;
+ DBG << "Going to parse pattern " << patfile << endl;
- Pattern::Ptr pat( parsePattern( file ) );
+ Pathname file = provideFile(_path + "suse/setup/descr/" + patfile);
+ MIL << "Pattern file to parse " << file << endl;
- DBG << "Pattern:" << pat << endl;
+ Pattern::Ptr pat( parsePattern( file ) );
- if (pat)
- _store.insert( pat );
+ DBG << "Pattern:" << pat << endl;
- DBG << "Parsing of " << file << " done" << endl;
- }
+ if (pat)
+ _store.insert( pat );
+
+ DBG << "Parsing of " << file << " done" << endl;
+ }
+ }
}
///////////////////////////////////////////////////////////////////
//