浏览代码

COMP: Remove alignment warning

Andy Cedilnik 21 年之前
父节点
当前提交
47333c9113
共有 2 个文件被更改,包括 10 次插入4 次删除
  1. 9 3
      Source/CTest/Curl/formdata.c
  2. 1 1
      Source/CTest/Curl/ftp.c

+ 9 - 3
Source/CTest/Curl/formdata.c

@@ -626,9 +626,15 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost,
       {
       {
         /* this "cast increases required alignment of target type" but
         /* this "cast increases required alignment of target type" but
            we consider it OK anyway */
            we consider it OK anyway */
-        struct curl_slist* list = array_state?
-          (struct curl_slist*)array_value:
-          va_arg(params, struct curl_slist*);
+        struct curl_slist* list = 0;
+        if ( array_state )
+          {
+          memcpy(&list, &array_value, sizeof(struct curl_slist*));
+          }
+        else
+          {
+          list = va_arg(params, struct curl_slist*);
+          }
 
 
         if( current_form->contentheader )
         if( current_form->contentheader )
           return_value = CURL_FORMADD_OPTION_TWICE;
           return_value = CURL_FORMADD_OPTION_TWICE;

+ 1 - 1
Source/CTest/Curl/ftp.c

@@ -2692,7 +2692,7 @@ CURLcode ftp_regular_transfer(struct connectdata *conn)
       cur_pos = slash_pos + 1; /* jump to the rest of the string */
       cur_pos = slash_pos + 1; /* jump to the rest of the string */
       if(++ftp->dirdepth >= ftp->diralloc) {
       if(++ftp->dirdepth >= ftp->diralloc) {
         /* enlarge array */
         /* enlarge array */
-        char *bigger;
+        char **bigger;
         ftp->diralloc *= 2; /* double the size each time */
         ftp->diralloc *= 2; /* double the size each time */
         bigger = realloc(ftp->dirs, ftp->diralloc * sizeof(ftp->dirs[0]));
         bigger = realloc(ftp->dirs, ftp->diralloc * sizeof(ftp->dirs[0]));
         if(!bigger) {
         if(!bigger) {