in plc4go/tools/plc4xpcapanalyzer/ui/actions.go [92:117]
func OpenFile(pcapFile string) error {
if !strings.HasPrefix(pcapFile, string(os.PathSeparator)) {
pcapFile = path.Join(currentDir, pcapFile)
}
var name string
if stat, err := os.Stat(pcapFile); err != nil {
return err
} else if stat.IsDir() {
stat.Name()
return errors.Errorf("%s is a dir", pcapFile)
} else {
name = stat.Name()
}
for _, loadedPcapFile := range loadedPcapFiles {
if loadedPcapFile.path == pcapFile {
return errors.Errorf("%s already loaded", name)
}
}
addRecentFilesEntry(pcapFile)
loadedPcapFiles = append(loadedPcapFiles, loadedPcapFile{
name: name,
path: pcapFile,
})
loadedPcapFilesChanged()
return nil
}