[gobject-introspection/ebassi/release-1-72: 1/4] scanner: Check before accessing an optional field
- From: Emmanuele Bassi <ebassi src gnome org>
 
- To: commits-list gnome org
 
- Cc: 
 
- Subject: [gobject-introspection/ebassi/release-1-72: 1/4] scanner: Check before accessing an optional field
 
- Date: Fri, 18 Mar 2022 11:56:40 +0000 (UTC)
 
commit 1ed006333b576ecfbbfa2ab93a02688de9a4eb07
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Fri Mar 18 11:43:34 2022 +0000
    scanner: Check before accessing an optional field
    
    It seems that optparse might just ignore storing options without a
    default. In this case, the `--compiler` option should be initialised to
    `None`, but instead it just gets ignored.
    
    Without the `hasattr()` check, updating the introspection data for GLib
    fails with a Python backtrace.
 giscanner/scannermain.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
index 64575557..1d39ab84 100644
--- a/giscanner/scannermain.py
+++ b/giscanner/scannermain.py
@@ -461,7 +461,8 @@ def create_source_scanner(options, args):
     # Run the preprocessor, tokenize and construct simple
     # objects representing the raw C symbols
     ss = SourceScanner()
-    ss.set_compiler(options.compiler)
+    if hasattr(options, 'compiler') and options.compiler:
+        ss.set_compiler(options.compiler)
     ss.set_cpp_options(options.cpp_includes,
                        options.cpp_defines,
                        options.cpp_undefines,
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]