- char*s = malloc(len+1);
- swf_GetBlock(tag, s, len);
- s[len] = 0;
- array_append(pool->x_strings, s, (void*)(ptroff_t)len);
- free(s);
- DEBUG printf("%d) \"%s\"\n", t, pool->x_strings->d[t].name);
+ string_t s = string_new(&tag->data[tag->pos], len);
+ swf_GetBlock(tag, 0, len);
+ array_append(pool->x_strings, &s, 0);
+ DEBUG printf("%d) \"%s\"\n", t, ((string_t*)array_getkey(pool->x_strings, t))->str);