CID 608995: buffer overflow.

This should not happen, so in case a file has an unexpectedly large
name, drop to debugger.
This commit is contained in:
Adrien Destugues
2016-08-21 17:49:52 +02:00
parent bb4190f050
commit 9b1935445c
+6 -3
View File
@@ -244,10 +244,13 @@ public:
{ {
device = ref.device; device = ref.device;
directory = ref.directory; directory = ref.directory;
if (ref.name) if (ref.name == NULL)
strcpy(name, ref.name);
else
name[0] = 0; name[0] = 0;
else if (strlen(ref.name) > B_FILE_NAME_LENGTH) {
debugger("File name too long!");
name[0] = 0;
} else
strcpy(name, ref.name);
return *this; return *this;
} }