Remove exception raising in TWeakReference.QueryReferent as it is not a serious error (unimplemented interface) and its absence is not a problem at all. Added the interface definition for nsIWebProgressListener2, but not implemented.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1381 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
Joshy
2010-11-24 22:12:57 +00:00
parent 98c77fabc7
commit 5c93a8161f
2 changed files with 16 additions and 2 deletions

View File

@ -3979,6 +3979,12 @@ type
procedure OnSecurityChange(aWebProgress: nsIWebProgress; aRequest: nsIRequest; aState: PRUint32); safecall;
end;
nsIWebProgressListener2 = interface(nsISupports)
['{dde39de0-e4e0-11da-8ad9-0800200c9a66}']
procedure OnProgressChange64(aWebProgress: nsIWebProgress; aRequest: nsIRequest; aCurSelfProgress: PRInt64; aMaxSelfProgress: PRInt64; aCurTotalProgress: PRInt64; aMaxTotalProgress: PRInt64); safecall;
function onRefreshAttempted(aWebProgress: nsIWebProgress; aRefreshURI: nsIURI; aMillis: PRInt32; aSameURI: PRBool): PRBool; safecall;
end;
nsIWindowCreator = interface(nsISupports)
['{30465632-a777-44cc-90f9-8145475ef999}']
function CreateChromeWindow(parent: nsIWebBrowserChrome; chromeFlags: PRUint32): nsIWebBrowserChrome; safecall;

View File

@ -426,9 +426,17 @@ var
rv: nsresult;
begin
rv := FSupports.QueryInterface(uuid, Intf);
if NS_FAILED(rv) then
if NS_FAILED(rv) then begin
//This is not a catastrophic error, so no exception is needed.
//In example the uuid {DDE39DE0-E4E0-11DA-8AD9-0800200C9A66} request
//for a nsIWebProgressListener2. Just answering nothing does not
//produce an "error".
{$IFDEF DEBUG}
OutputDebugString(GUIDToString(uuid);
{$ENDIF}
//raise EGeckoError.Create('QueryReference Error');
System.Error(reIntfCastError);
//System.Error(reIntfCastError);
end;
end;
destructor TSupportsWeakReference.Destroy;