Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2012
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
TCL 1.11 KB | None | 0 0
  1.  
  2. proc ::pd_connect::pd_readsocket {} {
  3.     variable pd_socket
  4.     variable cmds_from_pd
  5.     if {[eof $pd_socket]} {
  6.         # if we lose the socket connection, that means pd quit, so we quit
  7.         close $pd_socket
  8.         exit
  9.     }
  10.     append cmds_from_pd [read $pd_socket]
  11.     if {[string index $cmds_from_pd end] ne "\n" || \
  12.             ![info complete $cmds_from_pd]} {
  13.         puts -nonewline stderr "A"
  14.     } else {
  15.         if {![catch {uplevel #0 $cmds_from_pd} errorname]} {
  16.             set cmds_from_pd ""
  17.             puts -nonewline stderr "e"
  18.         } else {
  19.             global errorInfo
  20.             switch -regexp -- $errorname {
  21.                 "missing close-brace" {
  22.                     puts -nonewline stderr "M"
  23.                 } "^invalid command name" {
  24.                     ::pdwindow::fatal \
  25.                         [concat [_ "(Tcl) INVALID COMMAND NAME: "] $errorInfo "\n"]
  26.                 } default {
  27.                     ::pdwindow::fatal \
  28.                         [concat [_ "(Tcl) UNHANDLED ERROR: "] $errorInfo "\n"]
  29.                 }
  30.             }
  31.         }
  32.     }
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement