]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 166533 via svnmerge from
authorTilghman Lesher <tilghman@meg.abyt.es>
Tue, 23 Dec 2008 04:33:37 +0000 (04:33 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Tue, 23 Dec 2008 04:33:37 +0000 (04:33 +0000)
https://origsvn.digium.com/svn/asterisk/trunk

................
  r166533 | tilghman | 2008-12-22 22:32:15 -0600 (Mon, 22 Dec 2008) | 11 lines

  Merged revisions 166509 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.4

  ........
    r166509 | tilghman | 2008-12-22 22:05:25 -0600 (Mon, 22 Dec 2008) | 4 lines

    Use the integer form of condition for integer comparisons.
    (closes issue #14127)
     Reported by: andrew
  ........
................

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@166534 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/channel.c

index 464c9faf18582964e172bfd84839549a346f4539..b66c875b522715e4074b7ea366a655399b563ba2 100644 (file)
@@ -2921,7 +2921,10 @@ int ast_indicate_data(struct ast_channel *chan, int _condition,
        /* The channel driver does not support this indication, let's fake
         * it by doing our own tone generation if applicable. */
 
-       if (condition < 0) {
+       /*!\note If we compare the enumeration type, which does not have any
+        * negative constants, the compiler may optimize this code away.
+        * Therefore, we must perform an integer comparison here. */
+       if (_condition < 0) {
                /* Stop any tones that are playing */
                ast_playtones_stop(chan);
                return 0;