Ignore:
Timestamp:
Aug 18, 2009, 2:37:39 PM (15 years ago)
Author:
Bruno Cornec
Message:

r3331@localhost: bruno | 2009-08-06 01:34:32 +0200

  • bkpinfo->scratchdir is now dynamically allocated
  • mondoarchive tests made in text+newt env. Seems OK. Valgrind errors to be fixed
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.10/mondo/src/common/libmondo-archive.c

    r2318 r2320  
    337337        mr_asprintf(&zipparams, "");
    338338    }
    339 
    340 //  make_hole_for_file(fname);
    341339
    342340    if (!does_file_exist(bkpinfo->tmpdir)) {
     
    543541
    544542    assert(bkpinfo != NULL);
    545     mr_asprintf(&tmp, "echo '%s' | tr -s ' ' '\n' | grep -E '^/dev/.*$' | tr -s '\n' ' ' | awk '{print $0\"\\n\";}'", bkpinfo->exclude_paths);
    546     mr_asprintf(&devs_to_exclude, "%s", call_program_and_get_last_line_of_output(tmp));
    547     mr_free(tmp);
    548 
    549     mr_asprintf(&tmp, "devs_to_exclude = '%s'", devs_to_exclude);
    550     log_msg(2, tmp);
    551     mr_free(tmp);
     543    if (bkpinfo->exclude_paths) {
     544        mr_asprintf(&tmp, "echo '%s' | tr -s ' ' '\n' | grep -E '^/dev/.*$' | tr -s '\n' ' ' | awk '{print $0\"\\n\";}'", bkpinfo->exclude_paths);
     545        mr_asprintf(&devs_to_exclude, "%s", call_program_and_get_last_line_of_output(tmp));
     546        mr_free(tmp);
     547
     548        mr_asprintf(&tmp, "devs_to_exclude = '%s'", devs_to_exclude);
     549        log_msg(2, tmp);
     550        mr_free(tmp);
     551    }
    552552
    553553    mvaddstr_and_log_it(g_currentY, 0,
     
    885885            last_filelist_number,   // parameter #12 (STRING)
    886886            estimated_total_noof_slices,    // parameter #13 (INT)
    887             devs_to_exclude,    // parameter #14
     887            (devs_to_exclude == NULL) ? "\"\"" : devs_to_exclude,   // parameter #14
    888888            use_comp_sz,        // parameter #15
    889889            use_lilo_sz,        // parameter #16
     
    920920    if (!res) {
    921921        log_to_screen("Boot+data disks were created OK");
    922         mr_asprintf(&command, "cp -f %s/images/mindi.iso %s/mondorescue.iso",
    923                 bkpinfo->scratchdir, MINDI_CACHE);
     922        mr_asprintf(&command, "cp -f %s/images/mindi.iso %s/mondorescue.iso", bkpinfo->scratchdir, MINDI_CACHE);
    924923        log_msg(2, command);
    925924        run_program_and_log_output(command, FALSE);
     
    927926
    928927        if (bkpinfo->nonbootable_backup) {
    929             mr_asprintf(&command, "cp -f %s/all.tar.gz %s/images",
    930                     bkpinfo->tmpdir, bkpinfo->scratchdir);
     928            mr_asprintf(&command, "cp -f %s/all.tar.gz %s/images", bkpinfo->tmpdir, bkpinfo->scratchdir);
    931929            if (system(command)) {
    932930                paranoid_free(command);
     
    941939            paranoid_free(command);
    942940        } else {
    943             mr_asprintf(&tmp, "cp -f %s/images/all.tar.gz %s", bkpinfo->scratchdir,
    944                 bkpinfo->tmpdir);
     941            mr_asprintf(&tmp, "cp -f %s/images/all.tar.gz %s", bkpinfo->scratchdir, bkpinfo->tmpdir);
    945942            if (system(tmp)) {
    946943                fatal_error("Cannot find all.tar.gz in tmpdir");
     
    16891686    }
    16901687
    1691     log_msg(2, "make_iso_fs --- scratchdir=%s --- destfile=%s",
    1692             bkpinfo->scratchdir, destfile);
     1688    log_msg(2, "make_iso_fs --- scratchdir=%s --- destfile=%s", bkpinfo->scratchdir, destfile);
    16931689    (void) getcwd(old_pwd, MAX_STR_LEN - 1);
    16941690    mr_asprintf(&tmp, "chmod 755 %s", bkpinfo->scratchdir);
     
    17271723        } else {
    17281724            res =
    1729                 eval_call_to_make_ISO(bkpinfo->call_make_iso,
    1730                                       bkpinfo->scratchdir,
    1731                                       g_current_media_number,
    1732                                       MONDO_LOGFILE, message_to_screen);
     1725                eval_call_to_make_ISO(bkpinfo->call_make_iso, bkpinfo->scratchdir, g_current_media_number, MONDO_LOGFILE, message_to_screen);
    17331726            if (res) {
    17341727                log_to_screen("%s...failed to write", message_to_screen);
     
    17891782                pause_for_N_seconds(5, "Letting DVD drive settle");
    17901783                res =
    1791                     eval_call_to_make_ISO(bkpinfo->call_make_iso,
    1792                                           bkpinfo->scratchdir,
    1793                                           g_current_media_number,
    1794                                           MONDO_LOGFILE,
    1795                                           message_to_screen);
     1784                    eval_call_to_make_ISO(bkpinfo->call_make_iso, bkpinfo->scratchdir, g_current_media_number, MONDO_LOGFILE, message_to_screen);
    17961785                retval += res;
    17971786                if (!bkpinfo->please_dont_eject) {
     
    23782367    if (g_getfattr) {
    23792368        get_fattr_list(biggielist, xattr_fname);
    2380         mr_asprintf(&command, "cp %s %s/archives/", xattr_fname,
    2381             bkpinfo->scratchdir);
     2369        mr_asprintf(&command, "cp %s %s/archives/", xattr_fname, bkpinfo->scratchdir);
    23822370        paranoid_system(command);
    23832371        mr_free(command);
     
    33023290    paranoid_fclose(fout);
    33033291
    3304     mr_asprintf(&tmp1, "cp -f %s/autorun %s/", g_mondo_home,
    3305             bkpinfo->scratchdir);
     3292    mr_asprintf(&tmp1, "cp -f %s/autorun %s/", g_mondo_home, bkpinfo->scratchdir);
    33063293    if (run_program_and_log_output(tmp1, FALSE)) {
    33073294        log_msg(2, "Warning - unable to copy autorun to scratchdir");
Note: See TracChangeset for help on using the changeset viewer.