+2008-01-11 Rodney Dawes <dobey@wayofthemonkey.com>
+
+ Reviewed by Anders Carlsson.
+
+ Bug 16779: Make the PluginStream implementation be shared across platforms
+ http://bugs.webkit.org/show_bug.cgi?id=16779
+
+ Add the new shared PluginStream files to the GTK+ and Win32 builds.
+ Add PluginStreamClient class for the streamDidFinishLoading method.
+ Add open/close/write methods to FileSystem for temporary file handling.
+ Add PluginDebug.h and npfunctions.h for shared PluginStream.
+ Add shared PluginStream.
+ Remove PluginStreamWin.
+ Update PluginViewWin to use shared PluginStream and PluginStreamClass.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/FileSystem.h:
+ * platform/gtk/FileSystemGtk.cpp:
+ * platform/win/FileSystemWin.cpp:
+ * plugins/PluginDebug.h:
+ * plugins/PluginStream.cpp:
+ * plugins/PluginStream.h:
+ * plugins/npfunctions.h:
+ * plugins/win/PluginDebug: Moved to PluginDebug.h.
+ * plugins/win/PluginStreamWin.cpp: Moved to PluginStream.cpp.
+ * plugins/win/PluginStreamWin.h: Moved to PluginStream.h
+ * plugins/win/PluginViewWin.cpp:
+ * plugins/win/PluginViewWin.h:
+ * plugins/win/npfunctions.h: Moved to npfunctions.h
+
2008-01-11 Geoffrey Garen <ggaren@apple.com>
Try to fix Mac build: Edit the right .exp file.
SVG_FEATURES :=
webcore_cppflags += \
+ -I $(srcdir)/JavaScriptCore/bindings \
-I $(srcdir)/WebCore \
-I $(srcdir)/WebCore/ForwardingHeaders \
-I $(srcdir)/WebCore/platform \
WebCore/platform/Timer.cpp \
WebCore/platform/text/UnicodeRange.cpp \
WebCore/platform/Widget.cpp \
+ WebCore/plugins/PluginStream.cpp \
WebCore/rendering/AutoTableLayout.cpp \
WebCore/rendering/bidi.cpp \
WebCore/rendering/break_lines.cpp \
platform/Timer.cpp \
platform/text/UnicodeRange.cpp \
platform/Widget.cpp \
+ plugins/PluginStream.cpp \
rendering/AutoTableLayout.cpp \
rendering/bidi.cpp \
rendering/break_lines.cpp \
<Tool\r
Name="VCCLCompilerTool"\r
Optimization="0"\r
- AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
+ AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
PreprocessorDefinitions="WIN32;__WIN32__;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ENABLE_XSLT;ENABLE_XPATH;ENABLE_SVG;ENABLE_SVG_AS_IMAGE;ENABLE_SVG_USE;ENABLE_SVG_FONTS;WEBCORE_CONTEXT_MENUS;USE_SAFARI_THEME;ENABLE_VIDEO"\r
MinimalRebuild="true"\r
ExceptionHandling="0"\r
/>\r
<Tool\r
Name="VCPostBuildEventTool"\r
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
+ CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
/>\r
</Configuration>\r
<Configuration\r
/>\r
<Tool\r
Name="VCCLCompilerTool"\r
- AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
+ AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
PreprocessorDefinitions="NDEBUG;WIN32;__WIN32__;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ENABLE_XSLT;ENABLE_XPATH;ENABLE_SVG;ENABLE_SVG_AS_IMAGE;ENABLE_SVG_USE;ENABLE_SVG_FONTS;WEBCORE_CONTEXT_MENUS;USE_SAFARI_THEME;ENABLE_VIDEO"\r
ExceptionHandling="0"\r
RuntimeLibrary="2"\r
/>\r
<Tool\r
Name="VCPostBuildEventTool"\r
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
+ CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
/>\r
</Configuration>\r
<Configuration\r
<Tool\r
Name="VCCLCompilerTool"\r
Optimization="0"\r
- AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
+ AdditionalIncludeDirectories=""$(ProjectDir)..\";"$(ProjectDir)..";"$(ProjectDir)..\css";"$(ProjectDir)..\editing";"$(ProjectDir)..\rendering";"$(ProjectDir)..\bindings\js";"$(ProjectDir)..\dom";"$(ProjectDir)..\history";"$(ProjectDir)..\html";"$(ProjectDir)..\bridge";"$(ProjectDir)..\bridge\win";"$(ProjectDir)..\loader";"$(ProjectDir)..\loader\icon";"$(ProjectDir)..\page";"$(ProjectDir)..\platform";"$(ProjectDir)..\platform\sql";"$(ProjectDir)..\platform\win";"$(ProjectDir)..\platform\network";"$(ProjectDir)..\platform\network\win";"$(ProjectDir)..\platform\cf";"$(ProjectDir)..\platform\network\cf";"$(ProjectDir)..\platform\graphics";"$(ProjectDir)..\platform\text";"$(ProjectDir)..\platform\graphics\cairo";"$(ProjectDir)..\platform\graphics\cg";"$(ProjectDir)..\platform\graphics\win";"$(ProjectDir)..\platform\image-decoders";"$(ProjectDir)..\platform\image-decoders\bmp";"$(ProjectDir)..\platform\image-decoders\gif";"$(ProjectDir)..\platform\image-decoders\ico";"$(ProjectDir)..\platform\image-decoders\jpeg";"$(ProjectDir)..\platform\image-decoders\png";"$(ProjectDir)..\platform\image-decoders\xbm";"$(ProjectDir)..\platform\image-decoders\zlib";"$(ProjectDir)..\xml";"$(WebKitOutputDir)\obj\WebCore\DerivedSources";"$(ProjectDir)..\plugins";"$(ProjectDir)..\plugins\win";"$(ProjectDir)..\platform\cairo\pixman\src";"$(ProjectDir)..\platform\cairo\cairo\src";"$(ProjectDir)..\svg\graphics";"$(ProjectDir)..\svg\graphics\cg";"$(ProjectDir)..\svg\graphics\filters";"$(ProjectDir)..\kcanvas";"$(ProjectDir)..\kcanvas\device";"$(ProjectDir)..\kcanvas\device\quartz";"$(ProjectDir)..\svg";"$(ProjectDir)..\storage";"$(WebKitOutputDir)\include";"$(WebKitOutputDir)\include\JavaScriptCore";"$(ProjectDir)..\ForwardingHeaders";"$(WebKitLibrariesDir)\include";"$(WebKitLibrariesDir)\include\icu";"$(WebKitLibrariesDir)\include\iconv";"$(WebKitLibrariesDir)\include\pthreads";"$(WebKitLibrariesDir)\include\sqlite";"$(WebKitLibrariesDir)\include\JavaScriptCore";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders";"$(WebKitLibrariesDir)\Include\CoreFoundation\OSXCompatibilityHeaders\GNUCompatibility";$(WebKitOutputDir)\include\QtMovieWin"\r
PreprocessorDefinitions="WIN32;__WIN32__;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ENABLE_XSLT;ENABLE_XPATH;ENABLE_SVG;ENABLE_SVG_AS_IMAGE;ENABLE_SVG_USE;ENABLE_SVG_FONTS;WEBCORE_CONTEXT_MENUS;USE_SAFARI_THEME;ENABLE_VIDEO"\r
MinimalRebuild="true"\r
ExceptionHandling="0"\r
/>\r
<Tool\r
Name="VCPostBuildEventTool"\r
- CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
+ CommandLine="mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
mkdir 2>NUL "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

xcopy /y /d "$(ProjectDir)..\config.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(WebKitOutputDir)\obj\WebCore\DerivedSources\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\loader\icon\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\history\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\html\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\css\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\graphics\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\text\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\cf\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\network\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\sql\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\platform\cairo\cairo\src\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bindings\js\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\bridge\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\page\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\plugins\win\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\rendering\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\editing\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\dom\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\xml\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\svg\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)..\storage\*.h" "$(WebKitOutputDir)\include\WebCore"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\bindings\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\bindings"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\kjs\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\kjs"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\pcre\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\pcre"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode"
xcopy /y /d "$(ProjectDir)\..\ForwardingHeaders\wtf\unicode\icu\*.h" "$(WebKitOutputDir)\include\WebCore\ForwardingHeaders\wtf\unicode\icu"

mkdir 2>NUL "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
xcopy /y /d /s /exclude:xcopy.excludes "$(ProjectDir)\..\page\inspector\*" "$(WebKitOutputDir)\bin\WebKit.resources\inspector"
"\r
/>\r
</Configuration>\r
</Configurations>\r
<Filter\r
Name="plugins"\r
>\r
+ <File\r
+ RelativePath="..\plugins\npfunctions.h"\r
+ >\r
+ </File>\r
+ <File\r
+ RelativePath="..\plugins\PluginDebug.h"\r
+ >\r
+ </File>\r
+ <File\r
+ RelativePath="..\plugins\PluginStream.cpp"\r
+ >\r
+ </File>\r
+ <File\r
+ RelativePath="..\plugins\PluginStream.h"\r
+ >\r
+ </File>\r
<Filter\r
Name="win"\r
>\r
RelativePath="..\plugins\win\npapi.cpp"\r
>\r
</File>\r
- <File\r
- RelativePath="..\plugins\win\npfunctions.h"\r
- >\r
- </File>\r
<File\r
RelativePath="..\plugins\win\PluginDatabaseWin.cpp"\r
>\r
RelativePath="..\plugins\win\PluginDatabaseWin.h"\r
>\r
</File>\r
- <File\r
- RelativePath="..\plugins\win\PluginDebug.h"\r
- >\r
- </File>\r
<File\r
RelativePath="..\plugins\win\PlugInInfoStoreWin.cpp"\r
>\r
RelativePath="..\plugins\win\PluginPackageWin.h"\r
>\r
</File>\r
- <File\r
- RelativePath="..\plugins\win\PluginStreamWin.cpp"\r
- >\r
- </File>\r
- <File\r
- RelativePath="..\plugins\win\PluginStreamWin.h"\r
- >\r
- </File>\r
<File\r
RelativePath="..\plugins\win\PluginViewWin.cpp"\r
>\r
/*
* Copyright (C) 2007 Apple Inc. All rights reserved.
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
class CString;
class String;
+#if PLATFORM(WIN)
+typedef HANDLE PlatformFileHandle;
+const PlatformFileHandle invalidPlatformFileHandle = INVALID_HANDLE_VALUE;
+#else
+typedef int PlatformFileHandle;
+const PlatformFileHandle invalidPlatformFileHandle = -1;
+#endif
+
bool fileExists(const String&);
bool deleteFile(const String&);
bool fileSize(const String&, long long& result);
CString fileSystemRepresentation(const String&);
+inline bool isHandleValid(const PlatformFileHandle& handle) { return handle != invalidPlatformFileHandle; }
+
+/* Prefix is what the filename should be prefixed with, not the full path */
+CString openTemporaryFile(const char* prefix, PlatformFileHandle&);
+void closeFile(PlatformFileHandle&);
+int writeToFile(PlatformFileHandle, const char* data, int length);
+
#if PLATFORM(WIN)
String localUserSpecificStorageDirectory();
String roamingUserSpecificStorageDirectory();
/*
* Copyright (C) 2007 Holger Hans Peter Freyther
+ * Copyright (C) 2008 Collabora, Ltd.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
#include <glib.h>
#include <glib/gstdio.h>
+#include <glib/gutils.h>
namespace WebCore {
return result == 0;
}
+
+CString openTemporaryFile(const char* prefix, PlatformFileHandle& handle)
+{
+ gchar* filename = g_strdup_printf("%sXXXXXX", prefix);
+ gchar* tempPath = g_build_filename(g_get_tmp_dir(), filename, NULL);
+ g_free(filename);
+
+ int fileDescriptor = g_mkstemp(tempPath);
+ if (!isHandleValid(fileDescriptor)) {
+ LOG_ERROR("Can't create a temporary file.");
+ g_free(tempPath);
+ return 0;
+ }
+ CString tempFilePath = tempPath;
+ g_free(tempPath);
+
+ handle = fileDescriptor;
+ return tempFilePath;
+}
+
+void closeFile(PlatformFileHandle& handle)
+{
+ if (isHandleValid(handle)) {
+ close(handle);
+ handle = invalidPlatformFileHandle;
+ }
+}
+
+int writeToFile(PlatformFileHandle handle, const char* data, int length)
+{
+ int totalBytesWritten = 0;
+ while (totalBytesWritten < length) {
+ int bytesWritten = write(handle, data, length - totalBytesWritten);
+ if (bytesWritten < 0)
+ return -1;
+ totalBytesWritten += bytesWritten;
+ }
+
+ return totalBytesWritten;
+}
}
/*\r
* Copyright (C) 2007 Apple Inc. All rights reserved.\r
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*\r
* Redistribution and use in source and binary forms, with or without\r
* modification, are permitted provided that the following conditions\r
return directory;\r
}\r
\r
+
+CString openTemporaryFile(const char* prefix, PlatformFileHandle& handle)
+{
+ char tempPath[MAX_PATH];
+ int tempPathLength = ::GetTempPathA(_countof(tempPath), tempPath);
+ if (tempPathLength <= 0 || tempPathLength > _countof(tempPath))
+ return 0;
+
+ char tempFile[MAX_PATH];
+ if (::GetTempFileNameA(tempPath, prefix, 0, tempFile) > 0) {
+ HANDLE tempHandle = ::CreateFileA(tempFile, GENERIC_READ | GENERIC_WRITE, 0, 0,
+ CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
+
+ if (isHandleValid(tempHandle)) {
+ handle = tempHandle;
+ return tempFile;
+ }
+ }
+ return 0;
+}
+
+void closeFile(PlatformFileHandle& handle)
+{
+ if (isHandleValid(handle)) {
+ ::CloseHandle(handle);
+ handle = invalidPlatformFileHandle;
+ }
+}
+
+int writeToFile(PlatformFileHandle handle, const char* data, int length)
+{
+ if (!isHandleValid(handle))
+ return -1;
+
+ DWORD bytesWritten;
+ bool success = WriteFile(handle, data, length, &bytesWritten, 0);
+
+ if (!success)
+ return -1;
+ return static_cast<int>(bytesWritten);
+}
String localUserSpecificStorageDirectory()
{
return cachedStorageDirectory(CSIDL_LOCAL_APPDATA);
#ifndef PLUGIN_DEBUG_H__
#define PLUGIN_DEBUG_H__
-#include "npapi.h"
+#include "npruntime_internal.h"
-static char* errorStrings[] = {
+static const char* errorStrings[] = {
"No errors occurred.", /* NPERR_NO_ERROR */
"Error with no specific error code occurred.", /* NPERR_GENERIC_ERROR */
"Invalid instance passed to the plug-in.", /* NPERR_INVALID_INSTANCE_ERROR */
/*
* Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
*/
#include "config.h"
-#include "PluginStreamWin.h"
+#include "PluginStream.h"
#include "CString.h"
#include "DocumentLoader.h"
#include "Frame.h"
#include "FrameLoader.h"
#include "PluginDebug.h"
-#include "PluginPackageWin.h"
-#include "PluginViewWin.h"
#include "SharedBuffer.h"
#include "SubresourceLoader.h"
return staticStreams;
}
-PluginStreamWin::PluginStreamWin(PluginViewWin* pluginView, Frame* frame, const ResourceRequest& resourceRequest, bool sendNotification, void* notifyData)
+PluginStream::PluginStream(PluginStreamClient* client, Frame* frame, const ResourceRequest& resourceRequest, bool sendNotification, void* notifyData, const NPPluginFuncs* pluginFuncs, NPP instance)
: m_resourceRequest(resourceRequest)
+ , m_client(client)
, m_frame(frame)
- , m_pluginView(pluginView)
, m_notifyData(notifyData)
, m_sendNotification(sendNotification)
- , m_loadManually(false)
, m_streamState(StreamBeforeStarted)
- , m_delayDeliveryTimer(this, &PluginStreamWin::delayDeliveryTimerFired)
+ , m_loadManually(false)
+ , m_delayDeliveryTimer(this, &PluginStream::delayDeliveryTimerFired)
, m_deliveryData(0)
- , m_tempFileHandle(INVALID_HANDLE_VALUE)
- , m_pluginFuncs(pluginView->plugin()->pluginFuncs())
- , m_instance(pluginView->instance())
+ , m_tempFileHandle(invalidPlatformFileHandle)
+ , m_pluginFuncs(pluginFuncs)
+ , m_instance(instance)
{
- ASSERT(m_pluginView);
+ ASSERT(m_instance);
m_stream.url = 0;
m_stream.ndata = 0;
streams().add(&m_stream, m_instance);
}
-PluginStreamWin::~PluginStreamWin()
+PluginStream::~PluginStream()
{
ASSERT(m_streamState != StreamStarted);
ASSERT(!m_loader);
streams().remove(&m_stream);
}
-void PluginStreamWin::start()
+void PluginStream::start()
{
ASSERT(!m_loadManually);
m_loader->load(m_resourceRequest);
}
-void PluginStreamWin::stop()
+void PluginStream::stop()
{
m_streamState = StreamStopped;
}
}
-void PluginStreamWin::startStream()
+void PluginStream::startStream()
{
ASSERT(m_streamState == StreamBeforeStarted);
// Some plugins (Flash) expect that javascript URLs are passed back decoded as this is the
// format used when requesting the URL.
if (responseURL.string().startsWith("javascript:", false))
- m_stream.url = _strdup(responseURL.decode_string(responseURL.deprecatedString()).utf8());
+ m_stream.url = strdup(responseURL.decode_string(responseURL.deprecatedString()).utf8());
else
- m_stream.url = _strdup(responseURL.deprecatedString().utf8());
+ m_stream.url = strdup(responseURL.deprecatedString().utf8());
CString mimeTypeStr = m_resourceResponse.mimeType().utf8();
m_reason = WebReasonNone;
// Protect the stream if destroystream is called from within the newstream handler
- RefPtr<PluginStreamWin> protect(this);
+ RefPtr<PluginStream> protect(this);
NPError npErr = m_pluginFuncs->newstream(m_instance, (NPMIMEType)mimeTypeStr.data(), &m_stream, false, &m_transferMode);
if (m_transferMode == NP_NORMAL)
return;
-
- char tempPath[MAX_PATH];
-
- int result = ::GetTempPathA(_countof(tempPath), tempPath);
- if (result > 0 && result <= _countof(tempPath)) {
- char tempFile[MAX_PATH];
- if (::GetTempFileNameA(tempPath, "WKP", 0, tempFile) > 0) {
- m_tempFileHandle = ::CreateFileA(tempFile, GENERIC_READ | GENERIC_WRITE, 0, 0,
- CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
-
- if (m_tempFileHandle != INVALID_HANDLE_VALUE) {
- m_path = tempFile;
- return;
- }
- }
- }
+ m_path = openTemporaryFile("WKP", m_tempFileHandle);
// Something went wrong, cancel loading the stream
- cancelAndDestroyStream(NPRES_NETWORK_ERR);
+ if (!isHandleValid(m_tempFileHandle))
+ cancelAndDestroyStream(NPRES_NETWORK_ERR);
}
-NPP PluginStreamWin::ownerForStream(NPStream* stream)
+NPP PluginStream::ownerForStream(NPStream* stream)
{
return streams().get(stream);
}
-void PluginStreamWin::cancelAndDestroyStream(NPReason reason)
+void PluginStream::cancelAndDestroyStream(NPReason reason)
{
- RefPtr<PluginStreamWin> protect(this);
+ RefPtr<PluginStream> protect(this);
destroyStream(reason);
stop();
}
-void PluginStreamWin::destroyStream(NPReason reason)
+void PluginStream::destroyStream(NPReason reason)
{
m_reason = reason;
if (m_reason != NPRES_DONE) {
destroyStream();
}
-void PluginStreamWin::destroyStream()
+void PluginStream::destroyStream()
{
if (m_streamState == StreamStopped)
return;
ASSERT (m_reason != WebReasonNone);
ASSERT (!m_deliveryData || m_deliveryData->size() == 0);
- if (m_tempFileHandle != INVALID_HANDLE_VALUE)
- ::CloseHandle(m_tempFileHandle);
+ closeFile(m_tempFileHandle);
if (m_stream.ndata != 0) {
if (m_reason == NPRES_DONE && (m_transferMode == NP_ASFILE || m_transferMode == NP_ASFILEONLY)) {
m_streamState = StreamStopped;
- // disconnectStream can cause us to be deleted.
- RefPtr<PluginStreamWin> protect(this);
+ // streamDidFinishLoading can cause us to be deleted.
+ RefPtr<PluginStream> protect(this);
if (!m_loadManually)
- m_pluginView->disconnectStream(this);
-
- m_pluginView = 0;
+ m_client->streamDidFinishLoading(this);
- if (!m_path.isNull())
- ::DeleteFileA(m_path.data());
+ if (!m_path.isNull()) {
+ String tempFilePath = String::fromUTF8(m_path.data());
+ deleteFile(tempFilePath);
+ }
}
-void PluginStreamWin::delayDeliveryTimerFired(Timer<PluginStreamWin>* timer)
+void PluginStream::delayDeliveryTimerFired(Timer<PluginStream>* timer)
{
ASSERT(timer == &m_delayDeliveryTimer);
deliverData();
}
-void PluginStreamWin::deliverData()
+void PluginStream::deliverData()
{
ASSERT(m_deliveryData);
}
}
-void PluginStreamWin::sendJavaScriptStream(const KURL& requestURL, const CString& resultString)
+void PluginStream::sendJavaScriptStream(const KURL& requestURL, const CString& resultString)
{
didReceiveResponse(0, ResourceResponse(requestURL, "text/plain", resultString.length(), "", ""));
destroyStream(resultString.isNull() ? NPRES_NETWORK_ERR : NPRES_DONE);
}
-void PluginStreamWin::didReceiveResponse(NetscapePlugInStreamLoader* loader, const ResourceResponse& response)
+void PluginStream::didReceiveResponse(NetscapePlugInStreamLoader* loader, const ResourceResponse& response)
{
ASSERT(loader == m_loader);
ASSERT(m_streamState == StreamBeforeStarted);
startStream();
}
-void PluginStreamWin::didReceiveData(NetscapePlugInStreamLoader* loader, const char* data, int length)
+void PluginStream::didReceiveData(NetscapePlugInStreamLoader* loader, const char* data, int length)
{
ASSERT(loader == m_loader);
ASSERT(length > 0);
// If the plug-in cancels the stream in deliverData it could be deleted,
// so protect it here.
- RefPtr<PluginStreamWin> protect(this);
+ RefPtr<PluginStream> protect(this);
if (m_transferMode != NP_ASFILEONLY) {
if (!m_deliveryData)
deliverData();
}
- if (m_streamState != StreamStopped && m_tempFileHandle != INVALID_HANDLE_VALUE) {
- DWORD written;
- bool retval = true;
-
- retval = WriteFile(m_tempFileHandle, data, length, &written, 0);
-
- if (!retval || (int)written != length)
+ if (m_streamState != StreamStopped && isHandleValid(m_tempFileHandle)) {
+ int bytesWritten = writeToFile(m_tempFileHandle, data, length);
+ if (bytesWritten != length)
cancelAndDestroyStream(NPRES_NETWORK_ERR);
}
}
-void PluginStreamWin::didFail(NetscapePlugInStreamLoader* loader, const ResourceError&)
+void PluginStream::didFail(NetscapePlugInStreamLoader* loader, const ResourceError&)
{
ASSERT(loader == m_loader);
destroyStream(NPRES_NETWORK_ERR);
}
-void PluginStreamWin::didFinishLoading(NetscapePlugInStreamLoader* loader)
+void PluginStream::didFinishLoading(NetscapePlugInStreamLoader* loader)
{
ASSERT(loader == m_loader);
ASSERT(m_streamState == StreamStarted);
/*
* Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef PluginStreamWin_H
-#define PluginStreamWin_H
+#ifndef PluginStream_H
+#define PluginStream_H
-#include <winsock2.h>
-#include <windows.h>
-#include <wtf/HashMap.h>
-#include <wtf/Vector.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/RefCounted.h>
#include "CString.h"
+#include "FileSystem.h"
#include "KURL.h"
#include "npfunctions.h"
#include "NetscapePlugInStreamLoader.h"
#include "ResourceResponse.h"
#include "StringHash.h"
#include "Timer.h"
+#include <wtf/HashMap.h>
+#include <wtf/Vector.h>
+#include <wtf/OwnPtr.h>
+#include <wtf/RefCounted.h>
namespace WebCore {
class Frame;
- class PluginViewWin;
+ class PluginStream;
enum PluginStreamState { StreamBeforeStarted, StreamStarted, StreamStopped };
- class PluginStreamWin : public RefCounted<PluginStreamWin>, private NetscapePlugInStreamLoaderClient {
+ class PluginStreamClient {
+ public:
+ virtual ~PluginStreamClient() {}
+ virtual void streamDidFinishLoading(PluginStream*) {}
+ };
+
+ class PluginStream : public RefCounted<PluginStream>, private NetscapePlugInStreamLoaderClient {
public:
- PluginStreamWin(PluginViewWin*, Frame*, const ResourceRequest&, bool sendNotification, void* notifyData);
- ~PluginStreamWin();
+ PluginStream(PluginStreamClient*, Frame*, const ResourceRequest&, bool sendNotification, void* notifyData, const NPPluginFuncs*, NPP instance);
+ ~PluginStream();
void start();
void stop();
ResourceRequest m_resourceRequest;
ResourceResponse m_resourceResponse;
+ PluginStreamClient* m_client;
Frame* m_frame;
RefPtr<NetscapePlugInStreamLoader> m_loader;
- PluginViewWin* m_pluginView;
void* m_notifyData;
bool m_sendNotification;
PluginStreamState m_streamState;
bool m_loadManually;
- Timer<PluginStreamWin> m_delayDeliveryTimer;
- void delayDeliveryTimerFired(Timer<PluginStreamWin>*);
+ Timer<PluginStream> m_delayDeliveryTimer;
+ void delayDeliveryTimerFired(Timer<PluginStream>*);
OwnPtr< Vector<char> > m_deliveryData;
- HANDLE m_tempFileHandle;
+ PlatformFileHandle m_tempFileHandle;
const NPPluginFuncs* m_pluginFuncs;
NPP m_instance;
#ifndef _NPFUNCTIONS_H_
#define _NPFUNCTIONS_H_
-#include "npruntime.h"
-#include "npapi.h"
+#include "npruntime_internal.h"
#ifdef __cplusplus
extern "C" {
/*
* Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
#include "kjs_window.h"
#include "PluginDebug.h"
#include "PluginPackageWin.h"
-#include "PluginStreamWin.h"
#include "npruntime_impl.h"
#include "runtime_root.h"
#include "Settings.h"
if (!m_isStarted)
return;
- HashSet<RefPtr<PluginStreamWin> > streams = m_streams;
- HashSet<RefPtr<PluginStreamWin> >::iterator end = streams.end();
- for (HashSet<RefPtr<PluginStreamWin> >::iterator it = streams.begin(); it != end; ++it) {
+ HashSet<RefPtr<PluginStream> > streams = m_streams;
+ HashSet<RefPtr<PluginStream> >::iterator end = streams.end();
+ for (HashSet<RefPtr<PluginStream> >::iterator it = streams.begin(); it != end; ++it) {
(*it)->stop();
disconnectStream((*it).get());
}
// if this is not a targeted request, create a stream for it. otherwise,
// just pass it off to the loader
if (request->frameLoadRequest().frameName().isEmpty()) {
- PluginStreamWin* stream = new PluginStreamWin(this, m_parentFrame, request->frameLoadRequest().resourceRequest(), request->sendNotification(), request->notifyData());
+ PluginStream* stream = new PluginStream(this, m_parentFrame, request->frameLoadRequest().resourceRequest(), request->sendNotification(), request->notifyData(), plugin()->pluginFuncs(), instance());
m_streams.add(stream);
stream->start();
} else {
if (getString(parentFrame->scriptProxy(), result, resultString))
cstr = resultString.utf8();
- RefPtr<PluginStreamWin> stream = new PluginStreamWin(this, parentFrame.get(), request->frameLoadRequest().resourceRequest(), request->sendNotification(), request->notifyData());
+ RefPtr<PluginStream> stream = new PluginStream(this, m_parentFrame, request->frameLoadRequest().resourceRequest(), request->sendNotification(), request->notifyData(), plugin()->pluginFuncs(), instance());
m_streams.add(stream);
stream->sendJavaScriptStream(requestURL, cstr);
}
NPError PluginViewWin::destroyStream(NPStream* stream, NPReason reason)
{
- PluginStreamWin* browserStream = static_cast<PluginStreamWin*>(stream->ndata);
+ PluginStream* browserStream = static_cast<PluginStream*>(stream->ndata);
- if (!stream || PluginStreamWin::ownerForStream(stream) != m_instance)
+ if (!stream || PluginStream::ownerForStream(stream) != m_instance)
return NPERR_INVALID_INSTANCE_ERROR;
browserStream->cancelAndDestroyStream(reason);
m_plugin->unload();
}
-void PluginViewWin::disconnectStream(PluginStreamWin* stream)
+void PluginViewWin::disconnectStream(PluginStream* stream)
{
ASSERT(m_streams.contains(stream));
ASSERT(m_loadManually);
ASSERT(!m_manualStream);
- m_manualStream = new PluginStreamWin(this, m_parentFrame, m_parentFrame->loader()->activeDocumentLoader()->request(), false, 0);
+ m_manualStream = new PluginStream(this, m_parentFrame, m_parentFrame->loader()->activeDocumentLoader()->request(), false, 0, plugin()->pluginFuncs(), instance());
m_manualStream->setLoadManually(true);
m_manualStream->didReceiveResponse(0, response);
/*
* Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
+ * Copyright (C) 2008 Collabora, Ltd. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
#include "IntRect.h"
#include "KURL.h"
#include "PlatformString.h"
+#include "PluginStream.h"
#include "ResourceRequest.h"
#include "Timer.h"
#include "Widget.h"
class PluginMessageThrottlerWin;
class PluginPackageWin;
class PluginRequestWin;
- class PluginStreamWin;
+ class PluginStream;
class ResourceError;
class ResourceResponse;
PluginStatusLoadedSuccessfully
};
- class PluginViewWin : public Widget {
+ class PluginViewWin : public Widget, private PluginStreamClient {
friend static LRESULT CALLBACK PluginViewWndProc(HWND, UINT, WPARAM, LPARAM);
public:
bool arePopupsAllowed() const;
- void disconnectStream(PluginStreamWin*);
+ void disconnectStream(PluginStream*);
+ void streamDidFinishLoading(PluginStream* stream) { disconnectStream(stream); }
// Widget functions
virtual void setFrameGeometry(const IntRect&);
Vector<bool, 4> m_popupStateStack;
- HashSet<RefPtr<PluginStreamWin> > m_streams;
+ HashSet<RefPtr<PluginStream> > m_streams;
Vector<PluginRequestWin*> m_requests;
int m_quirks;
bool m_isCallingPluginWndProc;
bool m_loadManually;
- RefPtr<PluginStreamWin> m_manualStream;
+ RefPtr<PluginStream> m_manualStream;
static PluginViewWin* s_currentPluginView;
};