]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/ole/dataobj.cpp
don't try to paint hidden windows
[wxWidgets.git] / src / msw / ole / dataobj.cpp
index ded312e08d9547c79bdf2a033abf4e60d20aa6d4..50eea047b9c0977927428151142bdae956873f66 100644 (file)
@@ -686,8 +686,11 @@ size_t wxDataObject::GetBufferOffset(const wxDataFormat& format )
 const void* wxDataObject::GetSizeFromBuffer( const void* buffer, size_t* size,
                                                const wxDataFormat& format )
 {
-    SIZE_T realsz = ::HeapSize(::GetProcessHeap(), 0, buffer);
-    if ( realsz == (SIZE_T)-1 )
+    // hack: the third parameter is declared non-const in Wine's headers so
+    // cast away the const
+    size_t realsz = ::HeapSize(::GetProcessHeap(), 0,
+                               wx_const_cast(void*, buffer));
+    if ( realsz == (size_t)-1 )
     {
         // note that HeapSize() does not set last error
         wxLogApiError(wxT("HeapSize"), 0);
@@ -1163,7 +1166,7 @@ public:
 
 
 
-wxURLDataObject::wxURLDataObject()
+wxURLDataObject::wxURLDataObject(const wxString& url)
 {
     // we support CF_TEXT and CFSTR_SHELLURL formats which are basicly the same
     // but it seems that some browsers only provide one of them so we have to
@@ -1173,6 +1176,9 @@ wxURLDataObject::wxURLDataObject()
 
     // we don't have any data yet
     m_dataObjectLast = NULL;
+
+    if ( !url.empty() )
+        SetURL(url);
 }
 
 bool wxURLDataObject::SetData(const wxDataFormat& format,