+ // Build the labels from the strings, take only the part before the
+ // label_separator and transform control characters to printable
+ // ones
+
+ char **labels = new char *[nb_lines];
+ for(int l = 0; l < nb_lines; l++) {
+ char *s, *t;
+ const char *u;
+ t = lines[l];
+ int e = 0;
+ while(*t && *t != label_separator) {
+ u = unctrl(*t++);
+ e += strlen(u);
+ }
+ labels[l] = new char[e + 1];
+ t = lines[l];
+ s = labels[l];
+ while(*t && *t != label_separator) {
+ u = unctrl(*t++);
+ while(*u) { *s++ = *u++; }
+ }
+ *s = '\0';
+ }
+