aboutsummaryrefslogtreecommitdiffstats
path: root/libgsm0710mux
diff options
context:
space:
mode:
authorMichael 'Mickey' Lauer <mickey@vanille-media.de>2010-03-22 01:21:06 +0100
committerMichael 'Mickey' Lauer <mickey@vanille-media.de>2010-03-22 01:21:06 +0100
commit67b96831cdf351b4a28fbc6880d04703e8209687 (patch)
tree6787ec74a91461249dee90ca2e03e233bacc156b /libgsm0710mux
parent28c2e7aeaece071c559d4b05879207bbb71f190e (diff)
downloadcornucopia-67b96831cdf351b4a28fbc6880d04703e8209687.tar.gz
cornucopia-67b96831cdf351b4a28fbc6880d04703e8209687.tar.bz2
cornucopia-67b96831cdf351b4a28fbc6880d04703e8209687.zip
libgsm0710mux: revert last commit; Idle.add is not a good idea when using a shared buffer
Diffstat (limited to 'libgsm0710mux')
-rw-r--r--libgsm0710mux/gsm0710mux/channel.vala9
1 files changed, 5 insertions, 4 deletions
diff --git a/libgsm0710mux/gsm0710mux/channel.vala b/libgsm0710mux/gsm0710mux/channel.vala
index 2c87c8e4..9bb1fcb9 100644
--- a/libgsm0710mux/gsm0710mux/channel.vala
+++ b/libgsm0710mux/gsm0710mux/channel.vala
@@ -183,10 +183,11 @@ internal class Channel
public void deliverData( void* data, int len )
{
- Idle.add( () => {
- transport.write( data, len );
- return false;
- } );
+ transport.write( data, len );
+ //FIXME: how to ensure round-robin?
+ //PARTIAL ANSWER: NOT by calling main-iteration nor Idle.add
+ // This buffer is shared across all channels and data will
+ // be corrupted on reentrancy!!!
}
//