Changeset 26567 for trunk/ippTools/src/difftool.c
- Timestamp:
- Jan 12, 2010, 2:07:51 PM (16 years ago)
- File:
-
- 1 edited
-
trunk/ippTools/src/difftool.c (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippTools/src/difftool.c
r26381 r26567 55 55 static bool topurgedskyfileMode(pxConfig *config); 56 56 static bool toscrubbedskyfileMode(pxConfig *config); 57 static bool tofullskyfileMode(pxConfig *config); 57 58 58 59 … … 94 95 MODECASE(DIFFTOOL_MODE_EXPORTRUN, exportrunMode); 95 96 MODECASE(DIFFTOOL_MODE_IMPORTRUN, importrunMode); 96 MODECASE(DIFFTOOL_MODE_TOCLEANEDSKYFILE, tocleanedskyfileMode); 97 MODECASE(DIFFTOOL_MODE_TOPURGEDSKYFILE, topurgedskyfileMode); 98 MODECASE(DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, toscrubbedskyfileMode); 97 MODECASE(DIFFTOOL_MODE_TOCLEANEDSKYFILE, tocleanedskyfileMode); 98 MODECASE(DIFFTOOL_MODE_TOPURGEDSKYFILE, topurgedskyfileMode); 99 MODECASE(DIFFTOOL_MODE_TOSCRUBBEDSKYFILE, toscrubbedskyfileMode); 100 MODECASE(DIFFTOOL_MODE_TOFULLSKYFILE, tofullskyfileMode); 99 101 100 102 default: … … 2036 2038 PXOPT_LOOKUP_STR(skycell_id, config->args, "-skycell_id", true, false); 2037 2039 2040 2041 psS64 magicked = 0; 2042 if (!strcmp(data_state, "full")) { 2043 PXOPT_LOOKUP_S64(set_magicked, config->args, "-magicked", 0, false); 2044 magicked = set_magicked; 2045 } 2046 2038 2047 psString query = pxDataGet("difftool_change_skyfile_data_state.sql"); 2039 2048 … … 2043 2052 } 2044 2053 2054 psString set_magicked_skyfile = psStringCopy(""); 2055 psString set_magicked_run = psStringCopy(""); 2056 if (magicked != 0 && !strcmp(data_state, "full")) { 2057 psStringAppend(&set_magicked_skyfile, "\n , diffSkyfile.magicked = %" PRId64, magicked); 2058 psStringAppend(&set_magicked_run, "\n , diffRun.magicked = %" PRId64, magicked); 2059 2060 } else if (!strcmp(data_state, "cleaned") || !strcmp(data_state, "purged")) { 2061 psStringAppend(&set_magicked_skyfile, "\n, diffSkyfile.magicked = IF(diffSkyfile.magicked = 0, 0, -1)"); 2062 psStringAppend(&set_magicked_run, "\n, diffRun.magicked = IF(diffRun.magicked = 0, 0, -1)"); 2063 } 2064 2045 2065 // Uses the unconstrained (diffRun.state [NEED NOT EQUAL] run_state) version from warptool.c 2046 2066 2047 if (!p_psDBRunQueryF(config->dbh, query, data_state, diff_id, skycell_id)) {2067 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_skyfile, diff_id, skycell_id)) { 2048 2068 psError(PS_ERR_UNKNOWN, false, "database error"); 2049 2069 // rollback … … 2052 2072 } 2053 2073 psError(PS_ERR_UNKNOWN, false, "database error"); 2074 psFree(set_magicked_skyfile); 2054 2075 return(false); 2055 2076 } 2077 psFree(set_magicked_skyfile); 2056 2078 psFree(query); 2057 2079 2058 2080 query = pxDataGet("difftool_change_run_state.sql"); 2059 if (!p_psDBRunQueryF(config->dbh, query, data_state, diff_id, data_state)) {2081 if (!p_psDBRunQueryF(config->dbh, query, data_state, set_magicked_run, diff_id, data_state)) { 2060 2082 // rollback 2061 2083 if (!psDBRollback(config->dbh)) { … … 2063 2085 } 2064 2086 psError(PS_ERR_UNKNOWN, false, "database error"); 2087 psFree(set_magicked_run); 2065 2088 return(false); 2066 2089 } … … 2068 2091 if (!psDBCommit(config->dbh)) { 2069 2092 psError(PS_ERR_UNKNOWN, false, "database error"); 2093 psFree(set_magicked_run); 2070 2094 return(false); 2071 2095 } 2096 psFree(set_magicked_run); 2072 2097 2073 2098 return(true); … … 2082 2107 static bool toscrubbedskyfileMode(pxConfig *config) { 2083 2108 return change_skyfile_data_state(config, "scrubbed", "goto_scrubbed"); 2109 } 2110 static bool tofullskyfileMode(pxConfig *config) { 2111 return change_skyfile_data_state(config, "full", "update"); 2084 2112 } 2085 2113
Note:
See TracChangeset
for help on using the changeset viewer.
