diff options
author | Daniel P. Berrange <berrange@redhat.com> | 2012-04-25 11:29:43 +0100 |
---|---|---|
committer | Daniel P. Berrange <berrange@redhat.com> | 2012-04-25 11:31:14 +0100 |
commit | ef78242e19e8d0599c74aa34fad0fbb5a56cdb20 (patch) | |
tree | 8345d803d0849540f23d5c69cc4e8e9b01954430 /client | |
parent | 49e2b2679f8fdbcddab0e1c022189966d7a7d103 (diff) | |
download | spice-ef78242e19e8d0599c74aa34fad0fbb5a56cdb20.tar.gz spice-ef78242e19e8d0599c74aa34fad0fbb5a56cdb20.tar.xz spice-ef78242e19e8d0599c74aa34fad0fbb5a56cdb20.zip |
Add some more 'noreturn' annotations
Methods which longjump, unconditionally raise an
exception, or call _exit() cannot return control
to the caller so should be annotated with 'noreturn'
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Diffstat (limited to 'client')
-rw-r--r-- | client/canvas.h | 2 | ||||
-rw-r--r-- | client/jpeg_decoder.cpp | 3 | ||||
-rw-r--r-- | client/red_client.h | 2 | ||||
-rw-r--r-- | client/red_peer.cpp | 2 | ||||
-rw-r--r-- | client/x11/platform.cpp | 3 |
5 files changed, 5 insertions, 7 deletions
diff --git a/client/canvas.h b/client/canvas.h index cd6a89b9..77025687 100644 --- a/client/canvas.h +++ b/client/canvas.h @@ -252,7 +252,7 @@ public: /* TODO: unite with the window debug callbacks? */ class GlzDecoderCanvasDebug: public GlzDecoderDebug { public: - virtual void error(const std::string& str) + virtual SPICE_GNUC_NORETURN void error(const std::string& str) { throw Exception(str); } diff --git a/client/jpeg_decoder.cpp b/client/jpeg_decoder.cpp index 2b2d5e47..c85902f5 100644 --- a/client/jpeg_decoder.cpp +++ b/client/jpeg_decoder.cpp @@ -52,10 +52,9 @@ extern "C" { { } - static jpeg_boolean jpeg_decoder_fill_input_buffer(j_decompress_ptr cinfo) + static SPICE_GNUC_NORETURN jpeg_boolean jpeg_decoder_fill_input_buffer(j_decompress_ptr cinfo) { PANIC("no more data for jpeg"); - return FALSE; } static void jpeg_decoder_skip_input_data(j_decompress_ptr cinfo, long num_bytes) diff --git a/client/red_client.h b/client/red_client.h index a2f00c41..c4b418a2 100644 --- a/client/red_client.h +++ b/client/red_client.h @@ -99,7 +99,7 @@ private: class GlzDecoderWindowDebug: public GlzDecoderDebug { public: - virtual void error(const std::string& str) + virtual SPICE_GNUC_NORETURN void error(const std::string& str) { throw Exception(str); } diff --git a/client/red_peer.cpp b/client/red_peer.cpp index 10640c8d..d2a60987 100644 --- a/client/red_peer.cpp +++ b/client/red_peer.cpp @@ -33,7 +33,7 @@ #include "debug.h" #include "platform_utils.h" -static void ssl_error() +static void SPICE_GNUC_NORETURN ssl_error() { unsigned long last_error = ERR_peek_last_error(); diff --git a/client/x11/platform.cpp b/client/x11/platform.cpp index 0669b69f..14c6e0cd 100644 --- a/client/x11/platform.cpp +++ b/client/x11/platform.cpp @@ -3167,11 +3167,10 @@ static int x_error_handler(Display* display, XErrorEvent* error_event) return 0; } -static int x_io_error_handler(Display* display) +static SPICE_GNUC_NORETURN int x_io_error_handler(Display* display) { LOG_ERROR("x io error on %s", XDisplayString(display)); _exit(-1); - return 0; } static XVisualInfo* get_x_vis_info(int screen) |