+ if (rr < 3) /* no local attributes given */
+ {
+ locals = xmalloc(sizeof(*locals));
+ locals->local = num;
+ locals->next = 0;
+ }
+ else /* parse the string "local{,local}" */
+ {
+ char *p = localstr;
+ data1_local_attribute **ap = &locals;
+ do
+ {
+ *ap = xmalloc(sizeof(**ap));
+ (*ap)->local = atoi(p);
+ (*ap)->next = 0;
+ ap = &(*ap)->next;
+ }
+ while ((p = strchr(p, ',')) && *(++p));
+ }