|
@@ -15,31 +15,7 @@ func Writer(d *Door) {
|
|
|
var Closed bool = false
|
|
|
|
|
|
for {
|
|
|
-
|
|
|
- select {
|
|
|
- case <-d.closeChannel:
|
|
|
- if !d.WriterClosed {
|
|
|
- d.WriterClosed = true
|
|
|
- close(d.writerChannel)
|
|
|
- }
|
|
|
- log.Println("~Writer")
|
|
|
- return
|
|
|
- default:
|
|
|
- }
|
|
|
- */
|
|
|
-
|
|
|
select {
|
|
|
-
|
|
|
- case <-d.closeChannel:
|
|
|
-
|
|
|
- if !d.WriterClosed {
|
|
|
- d.WriterClosed = true
|
|
|
- close(d.writerChannel)
|
|
|
- }
|
|
|
-
|
|
|
- log.Println("~Writer")
|
|
|
- return
|
|
|
- */
|
|
|
case output, ok := <-d.writerChannel:
|
|
|
if !ok {
|
|
|
log.Println("closeChannel")
|
|
@@ -48,47 +24,18 @@ func Writer(d *Door) {
|
|
|
if !d.WriterClosed {
|
|
|
|
|
|
d.WriterClosed = true
|
|
|
-
|
|
|
}
|
|
|
d.writerMutex.Unlock()
|
|
|
-
|
|
|
- if !d.Disconnect() {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
- */
|
|
|
log.Println("~Writer")
|
|
|
return
|
|
|
|
|
|
-
|
|
|
-
|
|
|
} else {
|
|
|
|
|
|
|
|
|
When we SavePos, also save/restore the last color set.
|
|
|
*/
|
|
|
if output == "" {
|
|
|
-
|
|
|
-
|
|
|
- if !d.WriterClosed {
|
|
|
- d.WriterClosed = true
|
|
|
- close(d.writerChannel)
|
|
|
- }
|
|
|
- */
|
|
|
-
|
|
|
- d.writerMutex.Lock()
|
|
|
- if !d.WriterClosed {
|
|
|
- d.WriterClosed = true
|
|
|
- close(d.writerChannel)
|
|
|
-
|
|
|
- }
|
|
|
- */
|
|
|
Closed = true
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
continue
|
|
|
}
|
|
|
|
|
@@ -116,37 +63,9 @@ func Writer(d *Door) {
|
|
|
|
|
|
}
|
|
|
d.writerMutex.Unlock()
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- d.WriterClosed = true
|
|
|
- close(d.writerChannel)
|
|
|
- */
|
|
|
-
|
|
|
- if !d.Disconnect() {
|
|
|
-
|
|
|
-
|
|
|
- close(d.writerChannel)
|
|
|
- }
|
|
|
- */
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-func Writer(handle int, writerChannel *chan string) {
|
|
|
- for output := range *writerChannel {
|
|
|
- buffer := []byte(output)
|
|
|
- n, err := syscall.Write(handle, buffer)
|
|
|
- if (err != nil) || (n != len(buffer)) {
|
|
|
- close(*writerChannel)
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-*/
|