Ticket #1581 (closed defect: fixed)

Opened 2 months ago

Last modified 1 month ago

RC interface with --rc-fake-tty using stdin/stdout does not work on VLC 0.8.6[def]

Reported by: jha Assigned to: funman
Priority: normal Milestone: 0.8.6-bugfix
Component: Interfaces Version: 0.8.6 (bugfix)
Severity: normal Keywords:
Cc: Platform(s): Linux
Difficulty: easy Work status: Not started

Description

A change to modules/control/rc.c in 0.8.6d (http://git.videolan.or/gitweb.cgi/vlc.git/?a=commit;h=c37341f13f0d0a7ef847a9caf1688d01882627ce) breaks the RC interface (input ignored, no output) when trying to control VLC from another program (stdin/stdout and --rc-fake-tty) on Linux (possibly also other unix variants). This change appears to be absent from 0.9.0 (as seen from https://trac.videolan.org/vlc/browser). For reference, the bug report to Gentoo: http://bugs.gentoo.org/show_bug.cgi?id=219318

Change History

05/12/08 13:12:30 changed by funman

  • status changed from new to assigned.
  • difficulty changed from unknown to easy.
  • version set to 0.8.6 (bugfix).
  • owner changed from fkuehne, jb to funman.
  • milestone set to 0.8.6-bugfix.

The change looks correct to me.

Why are using --rc-fake-tty ?

05/12/08 13:12:51 changed by funman

Why are *you* using --rc-fake-tty ?

05/12/08 13:47:42 changed by funman

  • status changed from assigned to closed.
  • resolution set to fixed.

No it was not correct fixed in [232337c3a3aba420a779aeb61b1dfbff267b6e6f]

05/12/08 14:28:08 changed by jha

The fix looks OK to me, have to test it to make sure.

To answer your question, the RC interface will not work without --rc-fake-tty if stdin/stdout is not a TTY, such as when controlling VLC from another program (in my case my own media center UI).

(follow-up: ↓ 6 ) 05/29/08 21:54:40 changed by courmisch

Well, your media center UI is kinda broken then. It should control VLC through a PTS/PTY pair anyway, so you don't need the fake-tty hack.

(in reply to: ↑ 5 ) 05/30/08 09:24:05 changed by jha

Replying to courmisch:

Well, your media center UI is kinda broken then. It should control VLC through a PTS/PTY pair anyway, so you don't need the fake-tty hack.

Why? The RC interface does not need any TTY properties from stdin/stdout (as it works with --rc-fake-tty and the only place it uses that variable is in the isatty(0) check), so why should the control channel be a TTY instead of the much simpler (and more common) pipe?