Do not call str.length if str is undefined

Fixes #5599.

The problem is that `stringToBytes` in `src/shared/util.js` can be called with an `undefined` string for some PDFs. This PR makes sure we handle that case correctly by setting the length to 0. Note that this function has to return a `Uint8Array`, even if it's of length 0, because other functionality in PDF.js depends on that.
Since `str === undefined` probably indicates that there is something wrong with the PDF file, should we print a warning in this case?
Otherwise we might make debugging some future issues harder.