Diff
Modified: trunk/Source/WebKit/win/ChangeLog (174469 => 174470)
--- trunk/Source/WebKit/win/ChangeLog 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/ChangeLog 2014-10-08 19:34:03 UTC (rev 174470)
@@ -1,3 +1,28 @@
+2014-10-08 Brent Fulgham <[email protected]>
+
+ [Win] Resolve various static analyzer warnings in WebKit.
+ https://bugs.webkit.org/show_bug.cgi?id=137531
+
+ Reviewed by Dean Jackson.
+
+ * MarshallingHelpers.cpp:
+ (MarshallingHelpers::safeArrayToIntArray): Handle possible failure of
+ SafeArrayGetElement call.
+ (MarshallingHelpers::safeArrayToIUnknownArray): Ditto.
+ * MemoryStream.cpp:
+ (MemoryStream::CopyTo): Zero-initialize 'written' to silence warning.
+ * WebCoreSupport/WebChromeClient.cpp:
+ (WebChromeClient::exceededDatabaseQuota): Handle possible failure of
+ GetModuleFileName.
+ * WebHistory.cpp:
+ (getDayBoundaries): Handle possible failure of TzSpecificLocalTimeToSystemTime
+ * WebView.cpp:
+ (WebView::shouldInitializeTrackPointHack): Zero initialize return value.
+ (WebView::dispatchDidReceiveIconFromWebFrame): Avoid possible DeleteObject
+ call on a null bitmap handle.
+ (WebView::standardUserAgentWithApplicationName): Get rid of spurious
+ pointer dereference.
+
2014-10-02 Tim Horton <[email protected]>
Move PageOverlay[Controller] to WebCore
Modified: trunk/Source/WebKit/win/MarshallingHelpers.cpp (174469 => 174470)
--- trunk/Source/WebKit/win/MarshallingHelpers.cpp 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/MarshallingHelpers.cpp 2014-10-08 19:34:03 UTC (rev 174470)
@@ -237,9 +237,9 @@
if (len > 0) {
items = new CFNumberRef[len];
for (; lBound <= uBound; lBound++) {
- int num;
+ int num = 0;
hr = ::SafeArrayGetElement(inArray, &lBound, &num);
- items[lBound] = intToCFNumberRef(num);
+ items[lBound] = SUCCEEDED(hr) ? intToCFNumberRef(num) : kCFNumberNaN;
}
}
CFArrayRef result = CFArrayCreate(0, (const void**) items, len, &kCFTypeArrayCallBacks);
@@ -255,9 +255,9 @@
if (SUCCEEDED(hr))
hr = ::SafeArrayGetUBound(inArray, 1, &uBound);
long len = (SUCCEEDED(hr)) ? (uBound-lBound+1) : 0;
- void* items;
+ void* items = nullptr;
hr = ::SafeArrayAccessData(inArray, &items);
- CFArrayRef result = CFArrayCreate(0, (const void**) items, len, &kIUnknownArrayCallBacks);
+ CFArrayRef result = SUCCEEDED(hr) ? CFArrayCreate(0, (const void**) items, len, &kIUnknownArrayCallBacks) : nullptr;
hr = ::SafeArrayUnaccessData(inArray);
return result;
}
Modified: trunk/Source/WebKit/win/MemoryStream.cpp (174469 => 174470)
--- trunk/Source/WebKit/win/MemoryStream.cpp 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/MemoryStream.cpp 2014-10-08 19:34:03 UTC (rev 174470)
@@ -192,7 +192,7 @@
cb.LowPart = (DWORD)-1;
}
- ULONG written;
+ ULONG written = 0;
ULONG read = min(cb.LowPart, (ULONG)(m_buffer->size()-m_pos));
HRESULT hr = pstm->Write(m_buffer->data()+m_pos, read, &written);
if (pcbWritten) {
Modified: trunk/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp (174469 => 174470)
--- trunk/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp 2014-10-08 19:34:03 UTC (rev 174470)
@@ -598,8 +598,9 @@
HMODULE safariHandle = GetModuleHandleW(L"Safari.exe");
if (!safariHandle)
return;
- GetModuleFileName(safariHandle, path, WTF_ARRAY_LENGTH(path));
- DWORD handle;
+ if (!::GetModuleFileName(safariHandle, path, WTF_ARRAY_LENGTH(path)))
+ return;
+ DWORD handle = 0;
DWORD versionSize = GetFileVersionInfoSize(path, &handle);
if (!versionSize)
return;
Modified: trunk/Source/WebKit/win/WebHistory.cpp (174469 => 174470)
--- trunk/Source/WebKit/win/WebHistory.cpp 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/WebHistory.cpp 2014-10-08 19:34:03 UTC (rev 174470)
@@ -126,12 +126,12 @@
addDayToSystemTime(beginningOfNextDayLocalTime);
SYSTEMTIME beginningSystemTime;
- ::TzSpecificLocalTimeToSystemTime(0, &beginningLocalTime, &beginningSystemTime);
- ::SystemTimeToVariantTime(&beginningSystemTime, &beginningOfDay);
+ if (::TzSpecificLocalTimeToSystemTime(0, &beginningLocalTime, &beginningSystemTime))
+ ::SystemTimeToVariantTime(&beginningSystemTime, &beginningOfDay);
SYSTEMTIME beginningOfNextDaySystemTime;
- ::TzSpecificLocalTimeToSystemTime(0, &beginningOfNextDayLocalTime, &beginningOfNextDaySystemTime);
- ::SystemTimeToVariantTime(&beginningOfNextDaySystemTime, &beginningOfNextDay);
+ if (::TzSpecificLocalTimeToSystemTime(0, &beginningOfNextDayLocalTime, &beginningOfNextDaySystemTime))
+ ::SystemTimeToVariantTime(&beginningOfNextDaySystemTime, &beginningOfNextDay);
}
static inline DATE beginningOfDay(DATE date)
Modified: trunk/Source/WebKit/win/WebView.cpp (174469 => 174470)
--- trunk/Source/WebKit/win/WebView.cpp 2014-10-08 19:24:43 UTC (rev 174469)
+++ trunk/Source/WebKit/win/WebView.cpp 2014-10-08 19:34:03 UTC (rev 174470)
@@ -2692,8 +2692,8 @@
L"Software\\Synaptics\\SynTPEnh\\UltraNavPS2" };
for (int i = 0; i < 5; ++i) {
- HKEY trackPointKey;
- int readKeyResult = ::RegOpenKeyExW(HKEY_CURRENT_USER, trackPointKeys[i], 0, KEY_READ, &trackPointKey);
+ HKEY trackPointKey = nullptr;
+ LSTATUS readKeyResult = ::RegOpenKeyExW(HKEY_CURRENT_USER, trackPointKeys[i], 0, KEY_READ, &trackPointKey);
::RegCloseKey(trackPointKey);
if (readKeyResult == ERROR_SUCCESS) {
shouldCreateScrollbars = true;
@@ -2928,7 +2928,7 @@
BitmapInfo bmInfo = BitmapInfo::create(sz);
- HBITMAP hBitmap = 0;
+ HBITMAP hBitmap = nullptr;
Image* icon = iconDatabase().synchronousIconForPageURL(str, sz);
@@ -2939,7 +2939,7 @@
}
HRESULT hr = m_frameLoadDelegate->didReceiveIcon(this, hBitmap, frame);
- if (hr == E_NOTIMPL)
+ if ((hr == E_NOTIMPL) && hBitmap)
DeleteObject(hBitmap);
}
}
@@ -5330,17 +5330,13 @@
return S_OK;
}
-HRESULT STDMETHODCALLTYPE WebView::standardUserAgentWithApplicationName(
- BSTR applicationName,
- BSTR* groupName)
+HRESULT WebView::standardUserAgentWithApplicationName(BSTR applicationName, BSTR* groupName)
{
if (!groupName) {
ASSERT_NOT_REACHED();
return E_POINTER;
}
- *groupName;
-
if (!applicationName) {
ASSERT_NOT_REACHED();
return E_POINTER;