~ubuntu-branches/ubuntu/dapper/file-roller/dapper-updates

« back to all changes in this revision

Viewing changes to src/fr-command-tar.c

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Holbach
  • Date: 2006-04-11 08:44:59 UTC
  • mto: This revision was merged to the branch mainline in revision 11.
  • Revision ID: james.westby@ubuntu.com-20060411084459-9r22188ftese2ev2
Tags: upstream-2.14.1
ImportĀ upstreamĀ versionĀ 2.14.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
129
129
        char       **fields;
130
130
        int          date_idx;
131
131
        char        *field_date, *field_time, *field_size, *field_name;
 
132
        char        *name;
132
133
 
133
134
        g_return_if_fail (line != NULL);
134
135
 
156
157
                fields = g_strsplit (field_name, " link to ", 2);
157
158
        }
158
159
 
159
 
        if (*(fields[0]) == '/') {
160
 
                fdata->full_path = g_strdup (fields[0]);
 
160
        name = unescape_str (fields[0]);
 
161
        if (*name == '/') {
 
162
                fdata->full_path = g_strdup (name);
161
163
                fdata->original_path = fdata->full_path;
162
164
        } else {
163
 
                fdata->full_path = g_strconcat ("/", fields[0], NULL);
 
165
                fdata->full_path = g_strconcat ("/", name, NULL);
164
166
                fdata->original_path = fdata->full_path + 1;
165
167
        }
 
168
        g_free (name);
166
169
 
167
170
        if (fields[1] != NULL)
168
171
                fdata->link = g_strdup (fields[1]);
748
751
}
749
752
 
750
753
 
751
 
char *
 
754
static char *
752
755
fr_command_tar_escape (FRCommand     *comm,
753
756
                       const char    *str)
754
757
{
755
758
        char *estr;
756
759
        char *estr2;
757
 
 
758
 
        estr = escape_str (str, "$?*\\'& !|()@#:;");
759
 
        estr2 = escape_str_common (estr, "[]", '[', ']');
 
760
        char *estr3;
 
761
 
 
762
        estr = escape_str (str, "\\$?*'& !|()@#:;");
 
763
        estr2 = escape_str (estr, "\\");
 
764
        estr3 = escape_str_common (estr2, "[]", '[', ']');
 
765
 
760
766
        g_free (estr);
761
 
 
762
 
        /*
763
 
          if ((strcmp (estr2, str) != 0) || strchrs (str, "& !()|@#:;")) {
764
 
          char *estr3 = g_strconcat ("'", estr2, "'", NULL);
765
 
          g_free (estr2);
766
 
          estr2 = estr3;
767
 
          }
768
 
        */
769
 
 
770
 
        return estr2;
 
767
        g_free (estr2);
 
768
 
 
769
        return estr3;
771
770
}
772
771
 
773
772