句子是对的.
楼主将时间状语从句省略主语与介词短语做状语的情形混淆了.After 在这里是介词,不是连词,后面接的是一个名词性短语而非从句,故不存在逻辑主语的问题.
calling him在这里 是现在分词短语,做后置定语,修饰voice的.如果是作宾语补足语,宾语应该是sb,而非sth.试比较:The child heard his mother's voice calling him(calling him是后置定语修饰voice).The child heard his mother calling him.(calling him是现在分词做宾语补足语).