diff --git a/src/slic3r/GUI/Printer/gstbambusrc.c b/src/slic3r/GUI/Printer/gstbambusrc.c index 14f2476f22..316432fd0a 100644 --- a/src/slic3r/GUI/Printer/gstbambusrc.c +++ b/src/slic3r/GUI/Printer/gstbambusrc.c @@ -365,14 +365,16 @@ gst_bambusrc_start (GstBaseSrc * bsrc) return FALSE; } + int rv = 0; BAMBULIB(Bambu_SetLogger)(src->tnl, _log, (void *)src); - if (BAMBULIB(Bambu_Open)(src->tnl) != Bambu_success) { + if ((rv = BAMBULIB(Bambu_Open)(src->tnl)) != Bambu_success) { BAMBULIB(Bambu_Destroy)(src->tnl); src->tnl = NULL; + gst_bambu_last_error = rv; return FALSE; } - int rv, n = 0; + int n = 0; while ((rv = BAMBULIB(Bambu_StartStream)(src->tnl, 1 /* video */)) == Bambu_would_block) { usleep(100000); } diff --git a/src/slic3r/GUI/wxMediaCtrl2.cpp b/src/slic3r/GUI/wxMediaCtrl2.cpp index ab0a2f3ac1..a4b0204604 100644 --- a/src/slic3r/GUI/wxMediaCtrl2.cpp +++ b/src/slic3r/GUI/wxMediaCtrl2.cpp @@ -177,7 +177,7 @@ void wxMediaCtrl2::Stop() } #ifdef __LINUX__ -extern int gst_bambu_last_error; +extern "C" int gst_bambu_last_error; #endif int wxMediaCtrl2::GetLastError() const