url of ecore-con-url is now stringshared
authordiscomfitor <discomfitor@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 23 Jul 2011 03:17:57 +0000 (03:17 +0000)
committerdiscomfitor <discomfitor@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 23 Jul 2011 03:17:57 +0000 (03:17 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@61607 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_con/Ecore_Con.h
src/lib/ecore_con/ecore_con_private.h
src/lib/ecore_con/ecore_con_url.c

index 0cd4c3e..0bf3998 100644 (file)
@@ -1198,7 +1198,7 @@ EAPI Eina_Bool         ecore_con_url_url_set(Ecore_Con_Url *url_con,
  * Gets the URL to send the request to.
  *
  * @param url_con Connection object through which the request will be sent.
- * @return URL that will receive the request, NULL on failure
+ * @return URL that will receive the request, NULL on failure. URL is stringshared.
  * @since 1.1
  */
 EAPI const char       *ecore_con_url_url_get(Ecore_Con_Url *url_con);
index 67a4b89..908f279 100644 (file)
@@ -181,7 +181,7 @@ struct _Ecore_Con_Url
    struct curl_slist *headers;
    Eina_List *additional_headers;
    Eina_List *response_headers;
-   char *url;
+   const char *url;
 
    Ecore_Con_Url_Time time_condition;
    double timestamp;
index 6575fc1..a6fbb82 100644 (file)
@@ -372,7 +372,7 @@ ecore_con_url_free(Ecore_Con_Url *url_con)
      free(s);
    EINA_LIST_FREE(url_con->response_headers, s)
      free(s);
-   free(url_con->url);
+   eina_stringshare_del(url_con->url);
    free(url_con);
 #else
    return;
@@ -410,12 +410,7 @@ ecore_con_url_url_set(Ecore_Con_Url *url_con,
    if (url_con->active)
      return EINA_FALSE;
 
-   if (url_con->url)
-     free(url_con->url);
-
-   url_con->url = NULL;
-   if (url)
-     url_con->url = strdup(url);
+   eina_stringshare_replace(&url_con->url, url);
 
    if (url_con->url)
      curl_easy_setopt(url_con->curl_easy, CURLOPT_URL,