about summary refs log tree commit diff
path: root/pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff')
-rw-r--r--pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff b/pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff
new file mode 100644
index 0000000000000..cc832bb107291
--- /dev/null
+++ b/pkgs/applications/misc/bambu-studio/0002-fix-build-for-gcc-13.diff
@@ -0,0 +1,38 @@
+diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp
+index 11a36dfabc..77a44e699b 100644
+--- a/src/slic3r/Utils/Http.cpp
++++ b/src/slic3r/Utils/Http.cpp
+@@ -88,9 +88,13 @@ std::mutex g_mutex;
+ 
+ struct form_file
+ {
+-    fs::ifstream ifs;
++    fs::ifstream                          ifs;
+     boost::filesystem::ifstream::off_type init_offset;
+     size_t                                content_length;
++
++    form_file(fs::path const& p, const boost::filesystem::ifstream::off_type offset, const size_t content_length)
++        : ifs(p, std::ios::in | std::ios::binary), init_offset(offset), content_length(content_length)
++    {}
+ };
+ 
+ struct Http::priv
+@@ -314,7 +318,7 @@ void Http::priv::form_add_file(const char *name, const fs::path &path, const cha
+ 		filename = path.string().c_str();
+ 	}
+ 
+-	form_files.emplace_back(form_file{{path, std::ios::in | std::ios::binary}, offset, length});
++	form_files.emplace_back(path, offset, length);
+ 	auto &f = form_files.back();
+     size_t size = length;
+     if (length == 0) {
+@@ -381,7 +385,7 @@ void Http::priv::set_put_body(const fs::path &path)
+ 	boost::system::error_code ec;
+ 	boost::uintmax_t filesize = file_size(path, ec);
+ 	if (!ec) {
+-        putFile = std::make_unique<form_file>(form_file{{path, std::ios_base::binary | std::ios_base::in}, 0, 0});
++        putFile = std::make_unique<form_file>(path, 0, 0);
+ 		::curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+ 		::curl_easy_setopt(curl, CURLOPT_READDATA, (void *) (putFile.get()));
+ 		::curl_easy_setopt(curl, CURLOPT_INFILESIZE, filesize);
+