diff --git a/accessible/src/atk/nsHTMLLinkAccessibleWrap.cpp b/accessible/src/atk/nsHTMLLinkAccessibleWrap.cpp
index 59bcb8c100f0..27386776944e 100644
--- a/accessible/src/atk/nsHTMLLinkAccessibleWrap.cpp
+++ b/accessible/src/atk/nsHTMLLinkAccessibleWrap.cpp
@@ -185,8 +185,10 @@ NS_IMETHODIMP nsHTMLImageMapAccessible::GetURI(PRInt32 aIndex, nsIURI **aURI)
NS_IMETHODIMP nsHTMLImageMapAccessible::GetObject(PRInt32 aIndex,
nsIAccessible **aAccessible)
{
- *aAccessible = CreateAreaAccessible(aIndex);
- return NS_OK;
+ nsCOMPtr areaAccessible;
+ nsresult rv = GetChildAt(aIndex, getter_AddRefs(areaAccessible));
+ NS_IF_ADDREF(*aAccessible = areaAccessible);
+ return rv;
}
/* boolean isValid (); */