Problem is dm_report_init() may return NULL and subsequent call to
dm_report_set_output_field_name_prefix() doesn't handle NULL value.
Example:
pvs --nameprefixes --rows --unquoted --noheadings -opv_name,fred
Logical Volume Fields
---------------------
lv_uuid - Unique identifier
lv_name - Name. LVs created for internal use are enclosed in brackets.
...
Physical Volume Segment Fields
------------------------------
pvseg_start - Physical Extent number of start of segment.
pvseg_size - Number of extents in segment.
Unrecognised field: fred
Segmentation fault
Version 2.02.44 -
====================================
+ Fix segfault when invalid field given in reporting commands.
Refactor init_lvm() for lvmcmdline and clvmd.
Add liblvm interactive test infrastructure to build.
Use better random seed value in temp file creation.
rh = dm_report_init(report_type, _report_types, _fields, format,
separator, report_flags, keys, cmd);
- if (field_prefixes)
+ if (rh && field_prefixes)
dm_report_set_output_field_name_prefix(rh, "lvm2_");
return rh;