+ if (result.size() < 2) {
+ setText(_("undefined"));
+ break;
+ }
+ string::size_type loc = result.rfind("\n", result.size() - 2);
+ loc = loc == string::npos ? 0 : loc + 1;
+ if (result.size() < loc + name_.size() + 1
+ || result.substr(loc + 1, name_.size()) != name_) {
+ setText(_("undefined"));
+ break;
+ }
+ // remove leading comments and \\name and space
+ result = result.substr(loc + name_.size() + 2);
+