- NewField(FieldFileComment, fw.ffo.FlatFileInformationFork.Comment),
- NewField(FieldFileType, fw.ffo.FlatFileInformationFork.TypeSignature),
- NewField(FieldFileCreateDate, fw.ffo.FlatFileInformationFork.CreateDate),
- NewField(FieldFileModifyDate, fw.ffo.FlatFileInformationFork.ModifyDate),
- NewField(FieldFileSize, fw.totalSize()),
- ))
+ NewField(FieldFileType, fw.ffo.FlatFileInformationFork.TypeSignature[:]),
+ NewField(FieldFileCreateDate, fw.ffo.FlatFileInformationFork.CreateDate[:]),
+ NewField(FieldFileModifyDate, fw.ffo.FlatFileInformationFork.ModifyDate[:]),
+ }
+
+ // Include the optional FileComment field if there is a comment.
+ if len(fw.ffo.FlatFileInformationFork.Comment) != 0 {
+ fields = append(fields, NewField(FieldFileComment, fw.ffo.FlatFileInformationFork.Comment))
+ }
+
+ // Include the FileSize field for files.
+ if fw.ffo.FlatFileInformationFork.TypeSignature != fileTypeFLDR {
+ fields = append(fields, NewField(FieldFileSize, fw.totalSize()))
+ }
+
+ res = append(res, cc.NewReply(t, fields...))