[x264-devel] Windows: restore previous console title after encoding

Jason Garrett-Glaser git at videolan.org
Mon Feb 7 06:31:32 CET 2011


x264 | branch: master | Jason Garrett-Glaser <jason at x264.com> | Sat Feb  5 01:16:49 2011 -0800| [e6f00af6ec59d63fac489594121d6cb3a0e98569] | committer: Jason Garrett-Glaser

Windows: restore previous console title after encoding
MSDN docs claim that SetConsoleTitle's effect is reverted when the process terminates, but this doesn't always work properly.
Accordingly, manually revert the console title at the end of encoding.

> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=e6f00af6ec59d63fac489594121d6cb3a0e98569
---

 x264.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/x264.c b/x264.c
index 6b4375e..f6542a2 100644
--- a/x264.c
+++ b/x264.c
@@ -45,6 +45,7 @@
 #ifdef _WIN32
 #include <windows.h>
 #else
+#define GetConsoleTitle(t,n)
 #define SetConsoleTitle(t)
 #endif
 
@@ -1640,6 +1641,9 @@ static int encode( x264_param_t *param, cli_opt_t *opt )
     double  duration;
     double  pulldown_pts = 0;
     int     retval = 0;
+    char    UNUSED originalCTitle[200] = "";
+
+    GetConsoleTitle( originalCTitle, sizeof(originalCTitle) );
 
     opt->b_progress &= param->i_log_level < X264_LOG_DEBUG;
     i_update_interval = param->i_frame_total ? x264_clip3( param->i_frame_total / 1000, 1, 10 ) : 10;
@@ -1798,5 +1802,7 @@ fail:
                  (double) i_file * 8 / ( 1000 * duration ) );
     }
 
+    SetConsoleTitle( originalCTitle );
+
     return retval;
 }



More information about the x264-devel mailing list