void PlugInAutoStartProvider::setAutoStartOriginsArray(ImmutableArray& originList)
{
    m_autoStartOrigins.clear();
    for (size_t i = 0, length = originList.size(); i < length; ++i) {
        if (originList.at(i)->type() != WebString::APIType)
            continue;
        m_autoStartOrigins.append(static_cast<WebString*>(originList.at(i))->string());
    }
}
static void webkitCookieManagerGetDomainsWithCookiesCallback(WKArrayRef wkDomains, WKErrorRef, void* context)
{
    GRefPtr<GTask> task = adoptGRef(G_TASK(context));
    if (g_task_return_error_if_cancelled(task.get()))
        return;

    ImmutableArray* domains = toImpl(wkDomains);
    GPtrArray* returnValue = g_ptr_array_sized_new(domains->size());
    for (size_t i = 0; i < domains->size(); ++i) {
        WebString* domainString = static_cast<WebString*>(domains->at(i));
        String domain = domainString->string();
        if (domain.isEmpty())
            continue;
        g_ptr_array_add(returnValue, g_strdup(domain.utf8().data()));
    }
    g_ptr_array_add(returnValue, 0);
    g_task_return_pointer(task.get(), g_ptr_array_free(returnValue, FALSE), reinterpret_cast<GDestroyNotify>(g_strfreev));
}