Fix: bt2: _trim_docstring(): docstring can have 0 or 1 line
[babeltrace.git] / src / bindings / python / bt2 / bt2 / component.py
index afc1047d0c8ee4781672b7ba2cae9fae064a38c6..df62ae639bc3022c2d06db25c91f4404794eea0a 100644 (file)
@@ -345,17 +345,22 @@ def _create_component_class_from_const_ptr_and_get_ref(ptr, comp_cls_type):
 
 def _trim_docstring(docstring):
     lines = docstring.expandtabs().splitlines()
+
+    if len(lines) == 0:
+        return ''
+
     indent = sys.maxsize
 
-    for line in lines[1:]:
-        stripped = line.lstrip()
+    if len(lines) > 1:
+        for line in lines[1:]:
+            stripped = line.lstrip()
 
-        if stripped:
-            indent = min(indent, len(line) - len(stripped))
+            if stripped:
+                indent = min(indent, len(line) - len(stripped))
 
     trimmed = [lines[0].strip()]
 
-    if indent < sys.maxsize:
+    if indent < sys.maxsize and len(lines) > 1:
         for line in lines[1:]:
             trimmed.append(line[indent:].rstrip())
 
@@ -845,7 +850,9 @@ class _UserSourceComponent(_UserComponent, _SourceComponentConst):
             comp_status, 'cannot add output port to source component object'
         )
         assert self_port_ptr is not None
-        return bt2_port._UserComponentOutputPort._create_from_ptr(self_port_ptr)
+        return bt2_port._UserComponentOutputPort._create_from_ptr_and_get_ref(
+            self_port_ptr
+        )
 
 
 class _UserFilterComponent(_UserComponent, _FilterComponentConst):
@@ -893,7 +900,9 @@ class _UserFilterComponent(_UserComponent, _FilterComponentConst):
             comp_status, 'cannot add output port to filter component object'
         )
         assert self_port_ptr
-        return bt2_port._UserComponentOutputPort._create_from_ptr(self_port_ptr)
+        return bt2_port._UserComponentOutputPort._create_from_ptr_and_get_ref(
+            self_port_ptr
+        )
 
     def _add_input_port(self, name, user_data=None):
         utils._check_str(name)
@@ -903,7 +912,9 @@ class _UserFilterComponent(_UserComponent, _FilterComponentConst):
             comp_status, 'cannot add input port to filter component object'
         )
         assert self_port_ptr
-        return bt2_port._UserComponentInputPort._create_from_ptr(self_port_ptr)
+        return bt2_port._UserComponentInputPort._create_from_ptr_and_get_ref(
+            self_port_ptr
+        )
 
 
 class _UserSinkComponent(_UserComponent, _SinkComponentConst):
@@ -943,7 +954,9 @@ class _UserSinkComponent(_UserComponent, _SinkComponentConst):
             comp_status, 'cannot add input port to sink component object'
         )
         assert self_port_ptr
-        return bt2_port._UserComponentInputPort._create_from_ptr(self_port_ptr)
+        return bt2_port._UserComponentInputPort._create_from_ptr_and_get_ref(
+            self_port_ptr
+        )
 
     def _create_message_iterator(self, input_port):
         utils._check_type(input_port, bt2_port._UserComponentInputPort)
This page took 0.026023 seconds and 4 git commands to generate.