unpackStringArray method
Implementation
List<String> unpackStringArray(int maxLength) {
final results = <String>[];
final buf = StringBuffer();
final ptr = Pointer<Uint16>.fromAddress(address);
for (var v = 0; v < maxLength; v++) {
final charCode = ptr.elementAt(v).value;
if (charCode != 0) {
buf.writeCharCode(charCode);
} else {
results.add(buf.toString());
if (ptr.elementAt(v + 1).value == 0) {
break;
} else {
buf.clear();
}
}
}
// If array don't terminate before maxLength is are reached,
// just return the complete results thus far
return results;
}