TEST(ClipboardUtilitiesTest, Normal) { String name = "name"; String extension = "ext"; validateFilename(name, extension); EXPECT_EQ("name", name); EXPECT_EQ("ext", extension); }
int main(int argc, const char * argv[]) { char filename[100]; printf("Enter a file name\n"); scanf("%s",filename); int filestatus=validateFilename(filename); printf("%d",filestatus); return 0; }
TEST(ClipboardUtilitiesTest, NamePlusExtensionTooLong) { String name = String(longString) + longString; String extension = longString; validateFilename(name, extension); EXPECT_EQ( "0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765," "109", name); EXPECT_EQ(longString, extension); EXPECT_EQ(254u, name.length() + extension.length()); }
TEST(ClipboardUtilitiesTest, InvalidCharacters) { String name = "na" + String(invalidCharacters, WTF_ARRAY_LENGTH(invalidCharacters)) + "me"; String extension = "e" + String(invalidCharacters, WTF_ARRAY_LENGTH(invalidCharacters)) + "xt"; validateFilename(name, extension); EXPECT_EQ("name", name); EXPECT_EQ("ext", extension); }
static int dirParseFunc(const char *filename, const struct stat *st, int tflags, struct FTW *ftw) { (void)st; (void)tflags; (void)ftw; if (validateFilename && !validateFilename(filename, st, tflags, ftw)) return 0; parse(filename, addWMMenuEntryCallback); return 0; }
void FileUploader::upload(QImage *screenshot) { if(dateTimeAsPrefix) { prefix = QDateTime::currentDateTime().toString(dateTimeFormatPrefix); } if(dateTimeAsSuffix) { suffix = QDateTime::currentDateTime().toString(dateTimeFormatSuffix); } if(!filenameSetExternally) { filename = validateFilename(prefix + screenshotName + suffix + QString(".") + format); } QString fullFilePath = uploadPath + QDir::separator() + filename; qDebug() << "Saving screenshot to file: " << fullFilePath; QFileInfo fileInfo(uploadPath); if(!fileInfo.permission(QFile::WriteUser) || !QDir(uploadPath).exists()) { qDebug() << "No write permissions, or directory does not exist. Popping open a file dialog"; uploadPath = openDirectoryBrowser(uploadPath); //Probably in sandbox, pop open a diretory dialog if(uploadPath.isEmpty()) { emit uploadingError("Failed to save screenshot. No directory selected."); return; } fullFilePath = uploadPath + QDir::separator() + filename; //Save the new path QSettings settings("screencloud", "ScreenCloud"); settings.beginGroup("uploaders"); settings.beginGroup(shortname); settings.setValue("path", uploadPath); settings.endGroup(); settings.endGroup(); } if(format == "jpg") { if(!screenshot->save(fullFilePath, format.toAscii(), jpegQuality)) { emit uploadingError("Failed to save screenshot to file. Please make sure that your account has write permissions to " + uploadPath); } }else { if(!screenshot->save(fullFilePath, format.toAscii())) { emit uploadingError("Failed to save screenshot to file. Please make sure that your account has write permissions to " + uploadPath); } } emit uploadingFinished(""); }
static void writeImageToDataObject(DataObject* dataObject, Element* element, const KURL& url) { // Shove image data into a DataObject for use as a file ImageResourceContent* cachedImage = getImageResourceContent(element); if (!cachedImage || !cachedImage->getImage() || !cachedImage->isLoaded()) return; RefPtr<SharedBuffer> imageBuffer = cachedImage->getImage()->data(); if (!imageBuffer || !imageBuffer->size()) return; String imageExtension = cachedImage->getImage()->filenameExtension(); ASSERT(!imageExtension.isEmpty()); // Determine the filename for the file contents of the image. String filename = cachedImage->response().suggestedFilename(); if (filename.isEmpty()) filename = url.lastPathComponent(); String fileExtension; if (filename.isEmpty()) { filename = element->getAttribute(HTMLNames::altAttr); } else { // Strip any existing extension. Assume that alt text is usually not a // filename. int extensionIndex = filename.reverseFind('.'); if (extensionIndex != -1) { fileExtension = filename.substring(extensionIndex + 1); filename.truncate(extensionIndex); } } if (!fileExtension.isEmpty() && fileExtension != imageExtension) { String imageMimeType = MIMETypeRegistry::getMIMETypeForExtension(imageExtension); ASSERT(imageMimeType.startsWith("image/")); // Use the file extension only if it has imageMimeType: it's untrustworthy // otherwise. if (imageMimeType == MIMETypeRegistry::getMIMETypeForExtension(fileExtension)) imageExtension = fileExtension; } imageExtension = "." + imageExtension; validateFilename(filename, imageExtension); dataObject->addSharedBuffer(filename + imageExtension, imageBuffer); }
TEST(ClipboardUtilitiesTest, ExtensionTooLong) { String name; String extension = String(longString) + longString; validateFilename(name, extension); EXPECT_EQ(String(), extension); }