Replace NS_REINTERPRET_CAST with an NS_STATIC_CAST so that the wrong interface on the enumerator is not returned to callers. Fixes bug 128858. r=rginda sr=shaver a=dbaron (on trunk and 0.9.9 branch)
git-svn-id: svn://10.0.0.236/trunk@115803 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -3293,7 +3293,7 @@ nsComponentManagerImpl::EnumerateCLSIDs(nsIEnumerator** aEnumerator)
|
||||
if (NS_FAILED(rv))
|
||||
return rv;
|
||||
|
||||
*aEnumerator = NS_REINTERPRET_CAST(nsIEnumerator*, aEnum);
|
||||
*aEnumerator = NS_STATIC_CAST(nsIEnumerator*, aEnum);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
@@ -3323,7 +3323,7 @@ nsComponentManagerImpl::EnumerateContractIDs(nsIEnumerator** aEnumerator)
|
||||
if (NS_FAILED(rv))
|
||||
return rv;
|
||||
|
||||
*aEnumerator = NS_REINTERPRET_CAST(nsIEnumerator*, aEnum);
|
||||
*aEnumerator = NS_STATIC_CAST(nsIEnumerator*, aEnum);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
@@ -3454,7 +3454,7 @@ nsComponentManagerImpl::EnumerateCIDs(nsISimpleEnumerator **aEnumerator)
|
||||
if (NS_FAILED(rv))
|
||||
return rv;
|
||||
|
||||
*aEnumerator = NS_REINTERPRET_CAST(nsISimpleEnumerator*, aEnum);
|
||||
*aEnumerator = NS_STATIC_CAST(nsISimpleEnumerator*, aEnum);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
@@ -3483,7 +3483,7 @@ nsComponentManagerImpl::EnumerateContractIDs(nsISimpleEnumerator **aEnumerator)
|
||||
if (NS_FAILED(rv))
|
||||
return rv;
|
||||
|
||||
*aEnumerator = NS_REINTERPRET_CAST(nsISimpleEnumerator*, aEnum);
|
||||
*aEnumerator = NS_STATIC_CAST(nsISimpleEnumerator*, aEnum);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user