Changeset 2338 in MondoRescue for branches/2.2.10/mondo/src/mondorestore


Ignore:
Timestamp:
Aug 21, 2009, 1:47:12 AM (15 years ago)
Author:
Bruno Cornec
Message:
  • Adds LZMA support (Fix #309)
  • Change
Location:
branches/2.2.10/mondo/src/mondorestore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.10/mondo/src/mondorestore/mondo-rstr-compare.c

    r2334 r2338  
    253253    if (strstr(tarball_fname, ".bz2")) {
    254254        mr_asprintf(compressor_exe, "bzip2");
     255    } else if (strstr(tarball_fname, ".lzma")) {
     256        mr_asprintf(compressor_exe, "lzma");
    255257    } else if (strstr(tarball_fname, ".gz")) {
    256258        mr_asprintf(compressor_exe, "gzip");
     
    384386            mr_free(tarball_fname);
    385387            mr_asprintf(tarball_fname, MNT_CDROM "/archives/%d.afio.lzo", current_tarball_number);
     388        }
     389        if (!does_file_exist(tarball_fname)) {
     390            mr_free(tarball_fname);
     391            mr_asprintf(tarball_fname, MNT_CDROM "/archives/%d.afio.lzma", current_tarball_number);
    386392        }
    387393        if (!does_file_exist(tarball_fname)) {
  • branches/2.2.10/mondo/src/mondorestore/mondo-rstr-tools.c

    r2334 r2338  
    897897mr_free(value);
    898898
     899value = read_cfg_var(cfg_file, "use-lzma");
     900if (value && strstr(value, "yes")) {
     901    bkpinfo->use_lzma = TRUE;
     902    bkpinfo->use_lzo = FALSE;
     903    bkpinfo->use_gzip = FALSE;
     904    mr_free(bkpinfo->zip_exe);
     905    mr_asprintf(bkpinfo->zip_exe, "lzma");
     906    mr_free(bkpinfo->zip_suffix);
     907    mr_asprintf(bkpinfo->zip_suffix, "lzma");
     908}
     909mr_free(value);
     910
    899911value = read_cfg_var(cfg_file, "use-lzo");
    900912if (value && strstr(value, "yes")) {
     913    bkpinfo->use_lzma = FALSE;
    901914    bkpinfo->use_lzo = TRUE;
    902915    bkpinfo->use_gzip = FALSE;
     
    910923value = read_cfg_var(cfg_file, "use-gzip");
    911924if (value && strstr(value, "yes")) {
     925    bkpinfo->use_lzma = FALSE;
    912926    bkpinfo->use_lzo = FALSE;
    913927    bkpinfo->use_gzip = TRUE;
     
    921935value = read_cfg_var(cfg_file, "use-comp");
    922936if (value && strstr(value, "yes")) {
     937    bkpinfo->use_lzma = FALSE;
    923938    bkpinfo->use_lzo = FALSE;
    924939    bkpinfo->use_gzip = FALSE;
  • branches/2.2.10/mondo/src/mondorestore/mondorestore.c

    r2334 r2338  
    11561156            !does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "lzo")) &&
    11571157            !does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "gz")) &&
     1158            !does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "lzma")) &&
    11581159            !does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "bz2"))) {
    11591160            log_msg(3, "Cannot find a data slice or terminator slice on CD %d", g_current_media_number);
     
    11831184                    mr_asprintf(suffix, "gz");
    11841185                } else
     1186                    if (does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "lzma"))) {
     1187                    mr_asprintf(bzip2_command, "lzma");
     1188                    mr_asprintf(suffix, "lzma");
     1189                } else
    11851190                    if (does_file_exist(slice_fname(bigfileno, sliceno, ARCHIVES_PATH, "bz2"))) {
    11861191                    mr_asprintf(bzip2_command, "bzip2");
     
    15981603        if (strstr(tarball_fname, ".bz2")) {
    15991604            mr_asprintf(executable, "bzip2");
     1605        } else if (strstr(tarball_fname, ".lzma")) {
     1606            mr_asprintf(executable, "lzma");
    16001607        } else if (strstr(tarball_fname, ".gz")) {
    16011608            mr_asprintf(executable, "gzip");
     
    20992106        if (!does_file_exist(tarball_fname)) {
    21002107            mr_free(tarball_fname);
     2108            mr_asprintf(tarball_fname, MNT_CDROM "/archives/%ld.afio.lzma", current_tarball_number);
     2109        }
     2110        if (!does_file_exist(tarball_fname)) {
     2111            mr_free(tarball_fname);
    21012112            mr_asprintf(tarball_fname, MNT_CDROM "/archives/%ld.afio.lzo", current_tarball_number);
    21022113        }
Note: See TracChangeset for help on using the changeset viewer.