summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--wintable/new/accessibility.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/wintable/new/accessibility.h b/wintable/new/accessibility.h
index f97f18f..1d77f61 100644
--- a/wintable/new/accessibility.h
+++ b/wintable/new/accessibility.h
@@ -27,16 +27,19 @@ static HRESULT STDMETHODCALLTYPE tableAccQueryInterface(IAccessible *this, REFII
static ULONG STDMETHODCALLTYPE tableAccAddRef(IAccessible *this)
{
+printf("AddRef()\n");
TA->refcount++;
+ // TODO correct?
return TA->refcount;
}
static ULONG STDMETHODCALLTYPE tableAccRelease(IAccessible *this)
{
-printf("refcount %d\n", TA->refcount);
+printf("Release(): refcount %d\n", TA->refcount);
TA->refcount--;
if (TA->refcount == 0) {
- tableFree(TA, "error freeing Table accessibility object");
+printf("FREEING\n");
+//TODO tableFree(TA, "error freeing Table accessibility object");
return 0;
}
return TA->refcount;
@@ -251,7 +254,9 @@ static struct tableAcc *newTableAcc(struct table *t)
ta = (struct tableAcc *) tableAlloc(sizeof (struct tableAcc), "error creating Table accessibility object");
ta->vtbl = &tableAccVtbl;
+printf("create: %d -> ", ta->refcount);
ta->vtbl->AddRef(ta);
+printf("%d\n", ta->refcount);
ta->t = t;
return ta;
}
@@ -268,9 +273,9 @@ HANDLER(accessibilityHandler)
return FALSE;
if (((DWORD) lParam) != OBJID_CLIENT)
return FALSE;
-printf("getobject\n");
+printf("before LresultFromObject()\n");
*lResult = LresultFromObject(&IID_IAccessible, wParam, t->ta);
-printf("0x%X\n", *lResult);
+printf("after LresultFromObject(): 0x%X\n", *lResult);
// TODO check *lResult
return TRUE;
}