tracker-extract-pdf: Fix timeout situation with PDF extraction
tracker-extract-pdf: Fix timeout situation with PDF extraction

The 10 second timeout was always being used for every PDF extraction because
writing to the pipe was blocking and only killing the process would result in
reading from the parent of the fork(). This meant all extractions were much
slower than they needed to be.

This approach uses select() instead of signal handling to make sure the FDs
from pipe() are read at the right times too.

This fixes GB#680897

outofbits/tracker,hoheinzollern/tracker,hoheinzollern/tracker,hoheinzollern/tracker,outofbits/tracker,outofbits/tracker,hoheinzollern/tracker,outofbits/tracker,hoheinzollern/tracker,hoheinzollern/tracker,hoheinzollern/tracker,outofbits/tracker,outofbits/tracker,outofbits/tracker