Skip to content

Conversation

@Nickpanek
Copy link
Owner

This commit addresses security and robustness issues identified during code review:

  1. Fix HTML injection vulnerability: Added HTML escaping for file paths displayed in the CompleteDialog to prevent potential UI spoofing attacks. The output path is now properly escaped using html.escape() before being inserted into RichText labels (panek_video_program.py:131).

  2. Improve FFmpeg text escaping: Enhanced the text overlay escaping to properly handle backslashes in addition to colons and quotes. This prevents potential issues with the FFmpeg drawtext filter (panek_video_program.py:231).

  3. Add QProcess error handling: Connected the errorOccurred signal to provide clear error messages when FFmpeg fails to start. This improves user experience by surfacing errors like "ffmpeg not found" or "permission denied" instead of silent failures (panek_video_program.py:168, 195-210).

Note: The original Codex review referenced files from a different repository (Rust/TypeScript project), but similar vulnerabilities were found and fixed in this Python codebase.

This commit addresses security and robustness issues identified during code review:

1. **Fix HTML injection vulnerability**: Added HTML escaping for file paths
   displayed in the CompleteDialog to prevent potential UI spoofing attacks.
   The output path is now properly escaped using html.escape() before being
   inserted into RichText labels (panek_video_program.py:131).

2. **Improve FFmpeg text escaping**: Enhanced the text overlay escaping to
   properly handle backslashes in addition to colons and quotes. This prevents
   potential issues with the FFmpeg drawtext filter (panek_video_program.py:231).

3. **Add QProcess error handling**: Connected the errorOccurred signal to
   provide clear error messages when FFmpeg fails to start. This improves
   user experience by surfacing errors like "ffmpeg not found" or "permission
   denied" instead of silent failures (panek_video_program.py:168, 195-210).

Note: The original Codex review referenced files from a different repository
(Rust/TypeScript project), but similar vulnerabilities were found and fixed
in this Python codebase.
@Nickpanek Nickpanek merged commit 0bbc1ed into main Nov 5, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants