Passing `scoped_ptr<T>` types imply passing ownership. Strictly speaking it seems to me this function, as is, would have to get just a raw pointer to a XWalkExtension.