-- Leo's gemini proxy

-- Connecting to git.thebackupbox.net:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini

repo: rxvt-unicode-sixel
action: commit
revision:
path_from:
revision_from: 87858f8f99bb59dfe4e0f00f17e7c7de9cf8c246:
path_to:
revision_to:

git.thebackupbox.net

rxvt-unicode-sixel

git://git.thebackupbox.net/rxvt-unicode-sixel

commit 87858f8f99bb59dfe4e0f00f17e7c7de9cf8c246
Author: Emanuele Giaquinta <emanuele.giaquinta@gmail.com>
Date:   Mon Jun 11 14:45:53 2012 +0000

    Do not abort if loading an image with OSC 20 fails.

diff --git a/src/background.C b/src/background.C

index 7cd4fa271a8b05db143c60ea1802d9d787d0a253..

index ..089373bc4005f2d8392c605874ca4ec7b40bb451 100644

--- a/src/background.C
+++ b/src/background.C
@@ -347,11 +347,11 @@ rxvt_image::rxvt_image ()
   img = 0;
 }

-bool
+void
 rxvt_image::set_file_geometry (rxvt_screen *s, const char *file)
 {
   if (!file || !*file)
-    return false;
+    return;

   const char *p = strchr (file, ';');

@@ -364,19 +364,17 @@ rxvt_image::set_file_geometry (rxvt_screen *s, const char *file)
       file = f;
     }

-  bool ret = set_file (s, file);
+  set_file (s, file);
   alpha = 0x8000;
-  if (ret)
-    set_geometry (p ? p + 1 : "");
-  return ret;
+  set_geometry (p ? p + 1 : "");
 }

-bool
+void
 rxvt_image::set_file (rxvt_screen *s, const char *file)
 {
+  rxvt_img *img2 = rxvt_img::new_from_file (s, file);
   delete img;
-  img = rxvt_img::new_from_file (s, file);
-  return img != 0;
+  img = img2;
 }

 # endif /* BG_IMAGE_FROM_FILE */
@@ -544,8 +542,8 @@ rxvt_term::bg_init ()
 #if BG_IMAGE_FROM_FILE
   if (rs[Rs_backgroundPixmap])
     {
-      if (fimage.set_file_geometry (this, rs[Rs_backgroundPixmap])
-          && !bg_window_position_sensitive ())
+      fimage.set_file_geometry (this, rs[Rs_backgroundPixmap]);
+      if (!bg_window_position_sensitive ())
         update_background ();
     }
 #endif
diff --git a/src/command.C b/src/command.C

index ada4b55b7e88236a2599c5a525cc6ef83b6b215e..

index ..f524f0fb6ca9a2ac1b3fb960ec04ba42a6cb9e89 100644

--- a/src/command.C
+++ b/src/command.C
@@ -3490,8 +3490,14 @@ rxvt_term::process_xterm_seq (int op, char *str, char resp)

             if (*str != ';')
               {
-                if (fimage.set_file_geometry (this, str))
-                  changed = true;
+                try
+                  {
+                    fimage.set_file_geometry (this, str);
+                    changed = true;
+                  }
+                catch (const class rxvt_failure_exception &e)
+                  {
+                  }
               }
             else
               {
diff --git a/src/rxvt.h b/src/rxvt.h

index 789a58a43f49bc8530cc8ffdf87c8e809d48c47c..

index ..7c46cb9da9a83d39a92b33ca4eedcfc50a83cec5 100644

--- a/src/rxvt.h
+++ b/src/rxvt.h
@@ -283,8 +283,8 @@ struct rxvt_image : image_effects
   }

   rxvt_image ();
-  bool set_file_geometry (rxvt_screen *s, const char *file);
-  bool set_file (rxvt_screen *s, const char *file);
+  void set_file_geometry (rxvt_screen *s, const char *file);
+  void set_file (rxvt_screen *s, const char *file);
   bool set_geometry (const char *geom, bool update = false);
 };
 # endif

-----END OF PAGE-----

-- Response ended

-- Page fetched on Sun Jun 2 12:20:28 2024