// don't know what yet, so for now just warn the user (this is the least we
// can do) about it
wxASSERT_MSG( wxThread::IsMain(),
// don't know what yet, so for now just warn the user (this is the least we
// can do) about it
wxASSERT_MSG( wxThread::IsMain(),
const wxString desc = wxGetCommandOutput(wxT("lsb_release --description"));
const wxString rel = wxGetCommandOutput(wxT("lsb_release --release"));
const wxString codename = wxGetCommandOutput(wxT("lsb_release --codename"));
const wxString desc = wxGetCommandOutput(wxT("lsb_release --description"));
const wxString rel = wxGetCommandOutput(wxT("lsb_release --release"));
const wxString codename = wxGetCommandOutput(wxT("lsb_release --codename"));
id.StartsWith("Distributor ID:\t", &ret.Id);
desc.StartsWith("Description:\t", &ret.Description);
rel.StartsWith("Release:\t", &ret.Release);
id.StartsWith("Distributor ID:\t", &ret.Id);
desc.StartsWith("Description:\t", &ret.Description);
rel.StartsWith("Release:\t", &ret.Release);
else
{
wxLogError("Child process (PID %d) exited for unknown reason, "
"status = %d", pid, status);
else
{
wxLogError("Child process (PID %d) exited for unknown reason, "
"status = %d", pid, status);