summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build.yml21
-rw-r--r--tools/ideviceimagemounter.c7
2 files changed, 26 insertions, 2 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 76cd02a..0298939 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -37,6 +37,13 @@ jobs:
workflow: build.yml
name: libimobiledevice-glue-latest_${{env.target_triplet}}
repo: libimobiledevice/libimobiledevice-glue
+ - name: fetch libtatsu
+ uses: dawidd6/action-download-artifact@v3
+ with:
+ github_token: ${{secrets.GITHUB_TOKEN}}
+ workflow: build.yml
+ name: libtatsu-latest_${{env.target_triplet}}
+ repo: libimobiledevice/libtatsu
- name: install external dependencies
run: |
mkdir extract
@@ -97,6 +104,13 @@ jobs:
workflow: build.yml
name: libimobiledevice-glue-latest_macOS
repo: libimobiledevice/libimobiledevice-glue
+ - name: fetch libtatsu
+ uses: dawidd6/action-download-artifact@v3
+ with:
+ github_token: ${{secrets.GITHUB_TOKEN}}
+ workflow: build.yml
+ name: libtatsu-latest_macOS
+ repo: libimobiledevice/libtatsu
- name: install external dependencies
run: |
mkdir extract
@@ -213,6 +227,13 @@ jobs:
workflow: build.yml
name: libimobiledevice-glue-latest_${{ matrix.arch }}-${{ env.dest }}
repo: libimobiledevice/libimobiledevice-glue
+ - name: fetch libtatsu
+ uses: dawidd6/action-download-artifact@v3
+ with:
+ github_token: ${{secrets.GITHUB_TOKEN}}
+ workflow: build.yml
+ name: libtatsu-latest_${{ matrix.arch }}-${{ env.dest }}
+ repo: libimobiledevice/libtatsu
- name: install external dependencies
run: |
mkdir extract
diff --git a/tools/ideviceimagemounter.c b/tools/ideviceimagemounter.c
index 52b0666..511583e 100644
--- a/tools/ideviceimagemounter.c
+++ b/tools/ideviceimagemounter.c
@@ -377,8 +377,11 @@ int main(int argc, char **argv)
fprintf(stderr, "Error opening signature file '%s': %s\n", image_sig_path, strerror(errno));
goto leave;
}
- fstat(fileno(f), &fst);
- sig = malloc(sig_length);
+ if (fstat(fileno(f), &fst) != 0) {
+ fprintf(stderr, "Error: fstat: %s\n", strerror(errno));
+ goto leave;
+ }
+ sig = malloc(fst.st_size);
sig_length = fread(sig, 1, fst.st_size, f);
fclose(f);
if (sig_length == 0) {