return running;
return status;
static PRBool EnumerateMediaString(const nsString& aStringList, nsStringEnumFunc aFunc, void* aData){  PRBool    running = PR_TRUE;  nsAutoString  stringList(aStringList); // copy to work buffer  nsAutoString  subStr;  stringList.Append(kNullCh);  // put an extra null at the end  PRUnichar* start = (PRUnichar*)(const PRUnichar*)stringList.GetUnicode();  PRUnichar* end   = start;  while (running && (kNullCh != *start)) {    PRBool  quoted = PR_FALSE;    while ((kNullCh != *start) && nsCRT::IsAsciiSpace(*start)) {  // skip leading space      start++;    }    if ((kApostrophe == *start) || (kQuote == *start)) { // quoted string      PRUnichar quote = *start++;      quoted = PR_TRUE;      end = start;      while (kNullCh != *end) {        if (quote == *end) {  // found closing quote          *end++ = kNullCh;     // end string here          while ((kNullCh != *end) && (kComma != *end)) { // keep going until comma            end++;          }          break;        }        end++;      }    }    else {  // non-quoted string or ended      end = start;      while ((kNullCh != *end) && (kComma != *end)) { // look for comma        end++;      }      *end = kNullCh; // end string here    }    // truncate at first non letter, digit or hyphen    PRUnichar* test = start;    while (test <= end) {      if ((PR_FALSE == nsCRT::IsAsciiAlpha(*test)) &&           (PR_FALSE == nsCRT::IsAsciiDigit(*test)) && (kMinus != *test)) {        *test = kNullCh;        break;      }      test++;    }    subStr = start;    if (PR_FALSE == quoted) {      subStr.CompressWhitespace(PR_FALSE, PR_TRUE);    }    if (0 < subStr.Length()) {      running = (*aFunc)(subStr, aData);    }    start = ++end;  }  return running;}