strtol(string, &p, 10);
if (p == ptr) { // epoch str seems to be a number
size_t len = ptr - string;
- if (chunk) {
- ver.epoch = g_string_chunk_insert_len(chunk, string, len);
- } else {
- ver.epoch = g_strndup(string, len);
+ if (len) {
+ if (chunk) {
+ ver.epoch = g_string_chunk_insert_len(chunk, string, len);
+ } else {
+ ver.epoch = g_strndup(string, len);
+ }
}
}
} else { // There is no epoch
{
GChecksumType gchecksumtype;
+ if (!filename) {
+ g_debug(MODULE"%s: Filename param is NULL", __func__);
+ return NULL;
+ }
// Check if file exists and if it is a regular file (not a directory)
if (!g_file_test(filename, (G_FILE_TEST_EXISTS | G_FILE_TEST_IS_REGULAR))) {
- g_critical(MODULE"%s: File %s doesn't exists", __func__, filename);
+ g_debug(MODULE"%s: File %s doesn't exists", __func__, filename);
return NULL;
}
gchecksumtype = G_CHECKSUM_SHA256;
break;
default:
- g_critical(MODULE"%s: Unknown checksum type", __func__);
+ g_debug(MODULE"%s: Unknown checksum type", __func__);
return NULL;
};
FILE *fp = fopen(filename, "rb");
if (!fp) {
- g_critical(MODULE"%s: Cannot open file %s (%s)", __func__, filename, strerror(errno));
+ g_debug(MODULE"%s: Cannot open file %s (%s)", __func__, filename, strerror(errno));
return results;
}
// Get header range
if (fseek(fp, 104, SEEK_SET) != 0) {
- g_critical(MODULE"%s: fseek fail on %s (%s)", __func__, filename, strerror(errno));
+ g_debug(MODULE"%s: fseek fail on %s (%s)", __func__, filename, strerror(errno));
fclose(fp);
return results;
}
// Check sanity
if (hdrend < hdrstart) {
- g_critical(MODULE"%s: sanity check fail on %s (%d > %d))", __func__, filename, hdrstart, hdrend);
+ g_debug(MODULE"%s: sanity check fail on %s (%d > %d))", __func__, filename, hdrstart, hdrend);
return results;
}
name = "sha256";
break;
default:
- g_debug(MODULE"%s: Unknown checksum", __func__);
+ g_debug(MODULE"%s: Unknown checksum (%d)", __func__, type);
break;
}
UNUSED(ftwbuf);
int rv = remove(fpath);
if (rv)
- g_critical("%s: Cannot remove: %s: %s", __func__, fpath, strerror(errno));
+ g_warning("%s: Cannot remove: %s: %s", __func__, fpath, strerror(errno));
return rv;
}
}
+// Return path with exactly one trailing '/'
char *normalize_dir_path(const char *path)
{
char *normalized = NULL;
return g_strdup("./");
}
- do { // Skip all traling '/'
+ do { // Skip all trailing '/'
i--;
} while (i >= 0 && path[i] == '/');
}
return normalized;
-}
\ No newline at end of file
+}