From f7ae73be689edf9ae85151291e95d2d88a421c80 Mon Sep 17 00:00:00 2001 From: aliriza Date: Sun, 11 Aug 2024 18:04:55 +0300 Subject: [PATCH] builder init location fix --- src/ccode/archive-extract.c | 26 +++++++++++------------ src/operations/package-manager/build.vala | 5 ----- src/operations/utility/extract.vala | 1 + src/util/build.vala | 5 +++++ 4 files changed, 19 insertions(+), 18 deletions(-) diff --git a/src/ccode/archive-extract.c b/src/ccode/archive-extract.c index c962b0f..f89be2b 100755 --- a/src/ccode/archive-extract.c +++ b/src/ccode/archive-extract.c @@ -143,19 +143,19 @@ static void archive_extract_fn(archive *data, char *path, bool all) { continue; } }else if (S_ISREG(mode)){ - FILE *file = fopen(target_file, "wb"); - if (file == NULL) { - char* error_msg = build_string("Failed to open file for writing: %s", target_file); - error_add(error_msg); - error(3); - } - char buffer[4096]; - ssize_t size; - while ((size = archive_read_data(data->archive, buffer, sizeof(buffer))) > 0) { - fwrite(buffer, 1, size, file); - } - fclose(file); - chmod(target_file, 0755); + FILE *file = fopen(target_file, "wb"); + if (file == NULL) { + char* error_msg = build_string("Failed to open file for writing: %s", target_file); + error_add(error_msg); + error(3); + } + char buffer[4096]; + ssize_t size; + while ((size = archive_read_data(data->archive, buffer, sizeof(buffer))) > 0) { + fwrite(buffer, 1, size, file); + } + fclose(file); + chmod(target_file, 0755); } else { fwarning("Skip unsupported archive entry: %s", entry_path); } diff --git a/src/operations/package-manager/build.vala b/src/operations/package-manager/build.vala index 1079447..baa68b0 100755 --- a/src/operations/package-manager/build.vala +++ b/src/operations/package-manager/build.vala @@ -1,10 +1,5 @@ private bool no_src = false; -private static bool builder_init = false; private static int build_operation (string[] args) { - if(!builder_init){ - builder_ctx_init(); - builder_init = true; - } string current_directory=pwd (); string[] new_args = args; if (new_args.length == 0) { diff --git a/src/operations/utility/extract.vala b/src/operations/utility/extract.vala index 67a2d20..a35a6a9 100755 --- a/src/operations/utility/extract.vala +++ b/src/operations/utility/extract.vala @@ -7,6 +7,7 @@ private static int extract_main (string[] args) { } return 0; } + tar.set_target(pwd()); if (args.length > 1) { foreach (string file in args[1:]) { tar.extract (file); diff --git a/src/util/build.vala b/src/util/build.vala index af1a013..df9fda8 100755 --- a/src/util/build.vala +++ b/src/util/build.vala @@ -18,9 +18,14 @@ public void add_build_target(build_target bt) { bts += bt; } +private bool builder_init = false; public class builder { public builder() { + if(!builder_init){ + builder_ctx_init(); + builder_init = true; + } ymp_build = new ympbuild(); string target = get_value("build:target"); if (target == "") {