dir parser

This commit is contained in:
Jarek Kowalski
2016-04-09 18:30:21 -07:00
parent 3e9a11fc92
commit ee21768f34

View File

@@ -201,6 +201,33 @@ func (dr *directoryReader) ReadNext() (Entry, error) {
return &de, nil
}
// Expect ']'
t, err := dr.decoder.Token()
if err != nil {
return nil, fmt.Errorf("invalid directory data: %v", err)
}
if t != json.Delim(']') {
return nil, fmt.Errorf("invalid directory data: expected ']', got %v", t)
}
// Expect '}'
t, err = dr.decoder.Token()
if err != nil {
return nil, fmt.Errorf("invalid directory data: %v", err)
}
if t != json.Delim('}') {
return nil, fmt.Errorf("invalid directory data: expected ']', got %v", t)
}
// Expect end of file
t, err = dr.decoder.Token()
if err != io.EOF {
return nil, fmt.Errorf("invalid directory data: expected EOF, got %v", t)
}
return nil, io.EOF
}