Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- proc ::pd_connect::pd_readsocket {} {
- variable pd_socket
- variable cmds_from_pd
- if {[eof $pd_socket]} {
- # if we lose the socket connection, that means pd quit, so we quit
- close $pd_socket
- exit
- }
- append cmds_from_pd [read $pd_socket]
- if {[string index $cmds_from_pd end] ne "\n" || \
- ![info complete $cmds_from_pd]} {
- puts -nonewline stderr "A"
- } else {
- if {![catch {uplevel #0 $cmds_from_pd} errorname]} {
- set cmds_from_pd ""
- puts -nonewline stderr "e"
- } else {
- global errorInfo
- switch -regexp -- $errorname {
- "missing close-brace" {
- puts -nonewline stderr "M"
- } "^invalid command name" {
- ::pdwindow::fatal \
- [concat [_ "(Tcl) INVALID COMMAND NAME: "] $errorInfo "\n"]
- } default {
- ::pdwindow::fatal \
- [concat [_ "(Tcl) UNHANDLED ERROR: "] $errorInfo "\n"]
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement