summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-23 20:14:41 +0000
committersky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-23 20:14:41 +0000
commitd44d23502415ba7ce37fd93895194792f85ada97 (patch)
tree0426acfa1ecb9e6b6ef8522440128b45522cc485
parent6889104090b299e1e22e7639e0f923177e5fb988 (diff)
downloadchromium_src-d44d23502415ba7ce37fd93895194792f85ada97.zip
chromium_src-d44d23502415ba7ce37fd93895194792f85ada97.tar.gz
chromium_src-d44d23502415ba7ce37fd93895194792f85ada97.tar.bz2
I'm expanding this to fix a couple of bugs in determining the file name for
dragging images: . It's possible for the extension to be empty, resulting in a bad file name, for example, 'foo.' or just '.'. . We weren't restricting the size of the file to MAX_PATH. . We weren't removing characters that are invalid for file system names. It's possible to put this code up in OSExchangeData rather than here, but it feels best to centralize it here so that we don't have to worry about bad file names leaking into other code. I tried hard to write a layout test for this, but it seems we don't really use the file name in test shell so that I couldn't get coverage. BUG=7023 TEST=none Review URL: http://codereview.chromium.org/20504 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10206 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--webkit/build/WebCore/SConscript1
-rw-r--r--webkit/build/WebCore/WebCore.vcproj4
-rw-r--r--webkit/webkit.xcodeproj/project.pbxproj4
3 files changed, 9 insertions, 0 deletions
diff --git a/webkit/build/WebCore/SConscript b/webkit/build/WebCore/SConscript
index 0db8ffd..2335c69 100644
--- a/webkit/build/WebCore/SConscript
+++ b/webkit/build/WebCore/SConscript
@@ -937,6 +937,7 @@ if env.Bit('windows'):
if env.Bit('linux'):
# Linux specific implementations.
input_files.extend([
+ '$WEBCORE_DIR/platform/chromium/ClipboardChromiumLinux.cpp',
'$WEBCORE_DIR/platform/chromium/FileSystemChromiumLinux.cpp',
'$WEBCORE_DIR/platform/chromium/gtk2drawing.c',
'$WEBCORE_DIR/platform/chromium/KeyCodeConversionGtk.cpp',
diff --git a/webkit/build/WebCore/WebCore.vcproj b/webkit/build/WebCore/WebCore.vcproj
index 859401f..f199e5a 100644
--- a/webkit/build/WebCore/WebCore.vcproj
+++ b/webkit/build/WebCore/WebCore.vcproj
@@ -2236,6 +2236,10 @@
>
</File>
<File
+ RelativePath="..\..\..\third_party\WebKit\WebCore\platform\chromium\ClipboardChromiumWin.cpp"
+ >
+ </File>
+ <File
RelativePath="..\..\..\third_party\WebKit\WebCore\platform\chromium\ClipboardChromium.h"
>
</File>
diff --git a/webkit/webkit.xcodeproj/project.pbxproj b/webkit/webkit.xcodeproj/project.pbxproj
index 08b5442..7db317c 100644
--- a/webkit/webkit.xcodeproj/project.pbxproj
+++ b/webkit/webkit.xcodeproj/project.pbxproj
@@ -82,6 +82,7 @@
53AAC3800F291F4400233688 /* ThreadableLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 53AAC37F0F291F4300233688 /* ThreadableLoader.cpp */; };
53AAC3940F291FCF00233688 /* HTTPHeaderMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 53AAC3930F291FCF00233688 /* HTTPHeaderMap.cpp */; };
53E8BE100EC36A4E00B3F8B0 /* dom_operations.cc in Sources */ = {isa = PBXBuildFile; fileRef = 825405050D92E3DA0006B936 /* dom_operations.cc */; };
+ 566052DC068676E155832F81 /* ClipboardChromiumMac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CCDC4E96B39738447FC99B69 /* ClipboardChromiumMac.cpp */; };
58E986F9F1CA5FC0A89313B0 /* webview_delegate.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4A48A12D02638BF9107FD26D /* webview_delegate.cc */; };
6B873B9C0A9CB97EE5F350BC /* V8DOMWindowCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31C1FF1C3BB820B928CFE9BD /* V8DOMWindowCustom.cpp */; };
7B1438070E7874FC00901940 /* webframeloaderclient_impl.cc in Sources */ = {isa = PBXBuildFile; fileRef = 8254053F0D92E3DA0006B936 /* webframeloaderclient_impl.cc */; };
@@ -4408,6 +4409,7 @@
B85EBAF470DCB5F664CB69B1 /* RenderBoxModelObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderBoxModelObject.cpp; sourceTree = "<group>"; };
C1174C9D4E12AB30D653019A /* Playback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Playback.cpp; path = port/bindings/v8/extensions/Playback.cpp; sourceTree = SOURCE_ROOT; };
CCBDDEF91A55ACE86471036E /* CurrentTime.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CurrentTime.cpp; sourceTree = "<group>"; };
+ CCDC4E96B39738447FC99B69 /* ClipboardChromiumMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ClipboardChromiumMac.cpp; path = ../third_party/WebKit/WebCore/platform/chromium/ClipboardChromiumMac.cpp; sourceTree = SOURCE_ROOT; };
E40054A60E9BC4C20055B38E /* RefCountedLeakCounter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefCountedLeakCounter.cpp; sourceTree = "<group>"; };
E40054B00E9BCC5C0055B38E /* CollatorICU.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CollatorICU.cpp; sourceTree = "<group>"; };
E40054B30E9BCC720055B38E /* Collator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Collator.h; sourceTree = "<group>"; };
@@ -4771,6 +4773,7 @@
4CDA86D8A0B62BD0EBF07D78 /* AnimationControllerPrivate.h */,
7FF1567A8464BD6DC36B47CD /* MainThreadChromium.cpp */,
31493A4FA536C112F8C2FB03 /* PNGImageEncoder.cpp */,
+ CCDC4E96B39738447FC99B69 /* ClipboardChromiumMac.cpp */,
);
sourceTree = "<group>";
};
@@ -8727,6 +8730,7 @@
AB7FC2380F44ED820083BB25 /* ClientRectList.cpp in Sources */,
9384444C0F16B0570075F4C5 /* Clipboard.cpp in Sources */,
9384444D0F16B0570075F4C5 /* ClipboardChromium.cpp in Sources */,
+ 566052DC068676E155832F81 /* ClipboardChromiumMac.cpp in Sources */,
9384444E0F16B0570075F4C5 /* ClipboardEvent.cpp in Sources */,
9384444F0F16B0570075F4C5 /* ClipboardUtilitiesChromium.cpp in Sources */,
938444500F16B0570075F4C5 /* Color.cpp in Sources */,