To be honest, it's actually my fault since beginning of making GUI: for most of the time, I've simply assumed commands sent toward Exiftool will be executed "as expected". As a result (of that thinking), GUI didn't fully checked (and parsed) resulting messages from Exiftool. Much later (now?), I "discovered", "assumming" isn't enough.
I know in what cases such message (List index out of bounds) inside GUI can appear: it's when GUI expect (thus, automatically reads) "out" message (lines) from Exiftool, but there isn't any (there might be some "error" message from Exiftool, though). By trying to read nonexistent (result) message from Exiftool, GUI displays "List index..." message -which is actually GUI's internal error handling (thus user shouldn't see it at all).
What can I do? I can't force Exiftool to do something impossible (like modifying locked file or preventing some backup software by restoring files in previous state, etc.).
What I did is, GUI now reads and shows all messages which Exiftool writes after execution -but only if they exist! Now user (as Peter suggested) can see the reason of error (as Exiftool displays it) and look after solution by himself.
I only hope this was the solution... as there are so many possibilities one can't predict.
Thank you for jumping in.