diff options
| author | 2008-09-18 22:23:20 +0000 | |
|---|---|---|
| committer | 2008-09-18 22:23:20 +0000 | |
| commit | 5385858ec91eb4cd42f86ced4da35bfacc83a379 (patch) | |
| tree | 4631a5bdb7ca5df09a82993c7737278d3ae3375e /src | |
| parent | Correctly encode my surname (was broken by #2483) (diff) | |
| download | KVIrc-5385858ec91eb4cd42f86ced4da35bfacc83a379.tar.gz KVIrc-5385858ec91eb4cd42f86ced4da35bfacc83a379.tar.bz2 KVIrc-5385858ec91eb4cd42f86ced4da35bfacc83a379.zip | |
Fix continue behaviour in for and foreach
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@2490 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_treenode_specialcommandfor.cpp | 12 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_treenode_specialcommandforeach.cpp | 2 | ||||
| -rw-r--r-- | src/modules/snd/libkvisnd.cpp | 20 |
3 files changed, 24 insertions, 10 deletions
diff --git a/src/kvirc/kvs/kvi_kvs_treenode_specialcommandfor.cpp b/src/kvirc/kvs/kvi_kvs_treenode_specialcommandfor.cpp index 81901344b..eb463ad15 100644 --- a/src/kvirc/kvs/kvi_kvs_treenode_specialcommandfor.cpp +++ b/src/kvirc/kvs/kvi_kvs_treenode_specialcommandfor.cpp @@ -106,12 +106,9 @@ bool KviKvsTreeNodeSpecialCommandFor::execute(KviKvsRunTimeContext * c) } if(c->continuePending()) - { c->handleContinue(); - continue; - } - - return false; // propagate false ret value + else + return false; // propagate false ret value } } @@ -129,11 +126,8 @@ bool KviKvsTreeNodeSpecialCommandFor::execute(KviKvsRunTimeContext * c) } if(c->continuePending()) - { c->handleContinue(); - continue; - } - + return false; // propagate false ret value } } diff --git a/src/kvirc/kvs/kvi_kvs_treenode_specialcommandforeach.cpp b/src/kvirc/kvs/kvi_kvs_treenode_specialcommandforeach.cpp index e23169167..43aa2bcb9 100644 --- a/src/kvirc/kvs/kvi_kvs_treenode_specialcommandforeach.cpp +++ b/src/kvirc/kvs/kvi_kvs_treenode_specialcommandforeach.cpp @@ -121,6 +121,7 @@ bool KviKvsTreeNodeSpecialCommandForeach::execute(KviKvsRunTimeContext * c) if(c->continuePending()) { c->handleContinue(); + idx++; continue; } @@ -158,6 +159,7 @@ bool KviKvsTreeNodeSpecialCommandForeach::execute(KviKvsRunTimeContext * c) if(c->continuePending()) { c->handleContinue(); + ++it; continue; } diff --git a/src/modules/snd/libkvisnd.cpp b/src/modules/snd/libkvisnd.cpp index 0bd6d8e13..ee535f8c2 100644 --- a/src/modules/snd/libkvisnd.cpp +++ b/src/modules/snd/libkvisnd.cpp @@ -391,8 +391,26 @@ void KviSoundThread::run() float frameSize; void * buffer; - file = afOpenFile(m_szFileName.toUtf8().data(),"r",NULL); + file = afOpenFile(m_szFileName.utf8().data(),"r",NULL); + if(!file) + { + debug("libaudiofile could not open the file %s",m_szFileName.utf8().data()); + debug("giving up playing sound..."); + return; // screwed up + } + + sampleFormat = -1; + afGetVirtualSampleFormat(file, AF_DEFAULT_TRACK, &sampleFormat, &sampleWidth); + + if(sampleFormat == -1) + { + debug("libaudiofile couldn't find the sample format for file %s",m_szFileName.utf8().data()); + debug("giving up playing sound..."); + afCloseFile(file); + return; // screwed up + } + frameSize = afGetVirtualFrameSize(file, AF_DEFAULT_TRACK, 1); channelCount = afGetVirtualChannels(file, AF_DEFAULT_TRACK); buffer = kvi_malloc(int(BUFFER_FRAMES * frameSize)); |
