break;
case COL_PID:
xasprintf(&str, "%d", l->pid);
- if (l->pid >= 0)
+ if (l->pid >= 0 && rawdata)
*rawdata = (uint64_t)l->pid;
break;
case COL_TYPE:
ts_skip "failed to create a temporary file"
fi
+do_lslocks_flock_crash()
+{
+ local pid=$1
+
+ echo "#### crash when printing PID column ####"
+ [[ "$pid" == $("$TS_CMD_LSLOCKS" \
+ -r -n -p "$PID" \
+ -Q 'PATH =~ '"'.*/$FILE'"" and TYPE == 'FLOCK'" \
+ -o PID) ]]
+ echo "PID: $?"
+}
+
do_lslocks_common()
{
local pid=$1
"$FILE" \
"$TS_HELPER_MKFDS" nop; }
if read -r -u "${MKFDS[0]}" PID; then
+ do_lslocks_flock_crash $PID
do_lslocks_common $PID flock
echo DONE >&"${MKFDS[1]}"
fi