Commit graph

13917 commits

Author SHA1 Message Date
Jason Parker
fc607d5be4 Update documentation for pbx_lua.
Closes issue #11492, patch by mnicholson.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 21:28:49 +00:00
Russell Bryant
8093fa188b Merged revisions 91830 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91830 | russell | 2007-12-07 15:24:33 -0600 (Fri, 07 Dec 2007) | 5 lines

Make the lock protecting each thread's list of locks it currently holds
recursive.  I think that this will fix the situation where some people have
said that "core show locks" locks up the CLI.
(related to issue #11080)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 21:25:03 +00:00
Russell Bryant
90614c7018 Merged revisions 91828 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91828 | russell | 2007-12-07 15:17:24 -0600 (Fri, 07 Dec 2007) | 6 lines

Fix another bug in the DEBUG_THREADS code.  The ast_mutex_init() function had
the mutex attribute object marked as static.  This means that multiple threads
initializing locks at the same time could step on each other and end up with
improperly initialized locks.
(found when tracking down locking issues related to issue #11080)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91829 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 21:17:52 +00:00
Russell Bryant
c6705bd808 Merged revisions 91826 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91826 | russell | 2007-12-07 15:11:08 -0600 (Fri, 07 Dec 2007) | 6 lines

I love fixing lock related errors in the lock debugging code.  That's about as
ironic as it gets in Asterisk programming land.  Anyway, I spotted this bug while
trying to track down why systems are locking up and acting weird in issue #11080.
The mutex attribute object was marked as static in this function when it should
not have been.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91827 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 21:11:44 +00:00
Russell Bryant
3a4d1c852b Merged revisions 91783 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91783 | russell | 2007-12-07 10:38:48 -0600 (Fri, 07 Dec 2007) | 6 lines

* Add channel locking around datastore operations that expect the channel
  to be locked.
* Document why we don't record Local channels in the dialed interfaces list.
* Remove the dialed variable as it isn't needed.
* Restructure some code for clarity and coding guidelines stuff

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:40:41 +00:00
Jason Parker
a214f02b32 Fix a small typo in a comment.
Closes issue #11490


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:37:36 +00:00
Russell Bryant
bfd58d8c2a Merged revisions 91780 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91780 | russell | 2007-12-07 10:25:25 -0600 (Fri, 07 Dec 2007) | 7 lines

* Add channel locking around datastore operations that expect the channel
  to be locked.
* Document why we don't record Local channels in the dialed interfaces list.
* Handle memory allocation failure.
* Remove the dialed variable, as it wasn't actually needed.
* Tweak some formatting to conform to coding guidelines.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:28:36 +00:00
Jason Parker
02ea9face7 Add count of total number of calls processed by asterisk during it's lifetime.
Add number of total calls and current calls to SNMP.

Closes issue #10057, patch by jcmoore.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:11:05 +00:00
Russell Bryant
00297c91e5 Merged revisions 91777 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91777 | russell | 2007-12-07 10:08:35 -0600 (Fri, 07 Dec 2007) | 6 lines

* Add a bit more of a verbose comment as to why a hangup frame needs to be
  queued up if autoservice gets a NULL return from ast_read().
* Make the process of queueing the hangup frame more efficient by putting the
  frame where it is going to end up and avoiding some locking and extra memory
  allocations and freeing.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 16:11:00 +00:00
Mark Michelson
05dd9b7ef0 Merged revisions 91737 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91737 | mmichelson | 2007-12-07 09:39:58 -0600 (Fri, 07 Dec 2007) | 7 lines

Hangups that happen during autoservice were not processed appropriately. This is
because a hangup actually causes a NULL frame to be received, not a hangup frame.
Queueing a hangup if we receive a NULL frame during autoservice corrects this problem

(closes issue #11467, reported  by jmls, patched by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 15:40:59 +00:00
Russell Bryant
547083e21a Merged revisions 91693 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91693 | russell | 2007-12-06 20:51:22 -0600 (Thu, 06 Dec 2007) | 2 lines

Don't unlock the dialed_interfaces list until we're done messing with the iterator.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 02:52:38 +00:00
Russell Bryant
c72fa81580 Merged revisions 91677 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91677 | russell | 2007-12-06 20:38:40 -0600 (Thu, 06 Dec 2007) | 4 lines

Allow dialing local channels from Queue() and Dial() again.  There was a slight
flaw in the code to prevent call forwards from looping that caused this problem.
(related to issue #11486)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91678 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 02:43:21 +00:00
Russell Bryant
135f315382 Merged revisions 91675 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91675 | russell | 2007-12-06 20:19:45 -0600 (Thu, 06 Dec 2007) | 7 lines

Fix in an issue in the call forwarding handling code that was causing crashes
on every call into a queue.  I'm not entirely sure about the logic in this part
of the code, so I want to look at it some more tomorrow.  However, this makes
it safe and keeps it from crashing.

(closes issue #11486, reported by adamg, patched by me)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 02:21:07 +00:00
Tilghman Lesher
77ec19e255 Merged revisions 91637 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91637 | tilghman | 2007-12-06 18:52:17 -0600 (Thu, 06 Dec 2007) | 5 lines

At the end of a call, when we're reporting, RTCP may already be partially torn down, so check for NULL dereference
Reported by: blitzrage
Patch by: tilghman
(Closes issue #11450)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-07 00:58:52 +00:00
Tilghman Lesher
258f3caf0f Add a manager event for PRI events: this will help manager users detect when a D-channel goes down
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91618 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 23:47:07 +00:00
Tilghman Lesher
5a5f7ab2d8 If duration or billsec are not yet calculated, calculate them on demand.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91617 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 23:27:46 +00:00
Jason Parker
0ea5f428d0 Fix a problem with quoting in sqlite3 cdr module..
Closes issue #11070, patch by seanbright.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 21:57:28 +00:00
Mark Michelson
e797cd04dc Handle allocation failure of the heard and deleted arrays of the vm_state.
(closes issue #11408, reported and patched by jaroth)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91579 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 21:03:15 +00:00
Tilghman Lesher
700cd10397 Merged revisions 90166,90736,90753 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90166 | tilghman | 2007-11-29 13:48:10 -0600 (Thu, 29 Nov 2007) | 3 lines

Properly escape cdr->src and cdr->dst and ensure we use thread-safe escaping
(Fixes AST-2007-026)

........
r90736 | tilghman | 2007-12-03 17:23:55 -0600 (Mon, 03 Dec 2007) | 5 lines

If both dbhost and dbsock were not set, a NULL deref could result
Reported by: xrg
Patch by: tilghman
(Closes issue #11387)

........
r90753 | tilghman | 2007-12-03 17:50:51 -0600 (Mon, 03 Dec 2007) | 5 lines

Solaris requires the inclusion of sys/loadavg.h for getloadavg().
Reported by: snuffy
Patch by: snuffy,tilghman
(Closes issue #11430)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 20:52:26 +00:00
Russell Bryant
5932d81bab Blocked revisions 91501 via svnmerge
........
r91501 | russell | 2007-12-06 13:11:35 -0600 (Thu, 06 Dec 2007) | 5 lines

Add a new module flag to indicate that a build sum is present.  Modules built
against older Asterisk 1.4 headers will now load properly with just a warning
indicating that they are old and may cause problems.
(patch by paravoid)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91502 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 19:12:54 +00:00
Matthew Fredrickson
12748fb027 Make sure we clear these flags when libpri is not installed
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 16:54:08 +00:00
Joshua Colp
6e238eba40 Merged revisions 91450 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91450 | file | 2007-12-06 12:49:42 -0400 (Thu, 06 Dec 2007) | 6 lines

Fix various in the udptl implementation. It could return empty modem frames, have an incorrect sequence number on packets, and display the wrong sequence number in the debug messages.
(closes issue #11228)
Reported by: Cache
Patches:
      udptl-4.patch uploaded by dimas (license 88)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 16:51:09 +00:00
Joshua Colp
45dfc612de Merged revisions 91439 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91439 | file | 2007-12-06 12:14:26 -0400 (Thu, 06 Dec 2007) | 4 lines

Add support for accepting and sending T.38 in the initial INVITE.
(closes issue #9402)
Reported by: thdei

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91440 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 16:18:49 +00:00
Olle Johansson
1052282084 Adding documentation for the massive manager changes to manager
version 1.1 - hopefully a more consistent manager interface.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91438 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:56:58 +00:00
Olle Johansson
814d0ed4f8 - The Ping Action
- Now use Response: success
        - New header "Ping: pong" :-)

- The Events action
        - Now use Response: Success
        - The new status is reported as "Events: On" or "Events: Off"

- Report if manager is enabled in the reload event

Small cleanups...

From moremanager


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91420 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:50:43 +00:00
Olle Johansson
1e07078c60 Changes to manager events in channel.c
- Newstate event
        - Now has "CalleridNum" for numeric caller id, like Newchannel
        - The event does not send "<unknown>" for unknown caller IDs just an empty field
- Newstate and Newchannel events
        - these have changed headers
        "State"         -> ChannelStateDesc     Text based channel state
                        -> ChannelState         Numeric channel state
        - The events does not send "<unknown>" for unknown caller IDs just an empty field

- Newstate event
        - Now has "CalleridNum" for numeric caller id, like Newchannel
        - The event does not send "<unknown>" for unknown caller IDs just an empty field

- Link and Unlink events
        - The "Link" and "Unlink" bridge events in channel.c are now renamed to "Bridge"
        - The link state is in the bridgestate: header as "Link" or "Unlink"
        - For channel.c bridges, "Bridgetype: core" is added. This opens up for
          bridge events in rtp.c and channel drivers

- The "Rename" manager event has a renamed header, to use the same
        terminology for the current channel as other events
        - Oldname       -> Channel

(Moremanager)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91409 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:29:05 +00:00
Olle Johansson
c316bfa5d3 New manager event when a channel changes account code.
Maybe belongs in the new cdr category?
---moremanager---

 Event: NewAccountCode
        Modules: cdr.c
        Purpose: To report a change in account code for a live channel
        Example:
                Event: NewAccountCode
                Privilege: call,all
                Channel: SIP/olle-01844600
                Uniqueid: 1177530895.2
                AccountCode: Stinas account 1234848484
                OldAccountCode: Olles Account 12345



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:12:18 +00:00
Olle Johansson
807d5e1ef7 - Dial event
- Event Dial has new headers, to comply with other events
        - Source        -> Channel              Channel name (caller)
        - SrcUniqueID   -> UniqueID             Uniqueid
        (new)           -> Dialstring           Dialstring in app data


(moremanager)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91407 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 15:04:34 +00:00
Olle Johansson
6765d5f758 Adding small missing but important comma...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91406 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:55:31 +00:00
Olle Johansson
478df6c69f A big oops...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91388 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:40:44 +00:00
Olle Johansson
a545aaae53 The MeetmeJoin now has caller ID name and Caller ID number fields (like MeetMeLeave)
(Moremanager)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:36:54 +00:00
Olle Johansson
39c8fc532d Update ZapShowChannels so that you can specify one channel.
Action ZapShowChannels
        Header changes
        - Channel:      -> ZapChannel
        For active channels, the Channel: and Uniqueid: headers are added
        You can now add a "ZapChannel: " argument to zapshowchannels actions
        to only get information about one channel.

From the moremanager branch


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:33:14 +00:00
Olle Johansson
9f1c4887fa Doxygen updates
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91385 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:29:20 +00:00
Olle Johansson
9dc965eadd Merged revisions 91366 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91366 | oej | 2007-12-06 13:54:11 +0100 (Tor, 06 Dec 2007) | 4 lines

Make sure logger is reloaded at general reload in the cli.

(Discovered during Asterisk training in Portugal)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91384 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 14:23:12 +00:00
Olle Johansson
7e38b474d9 Change description of new manager command
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 10:29:02 +00:00
Olle Johansson
5af2cf109e Add manager command for showing all current channels.
Thanks, eliel, for writing the original patch. Modified by me to follow
other manager events and the new "moremanager" style.

(closes issue #11478)
Reported by: eliel
Patches: 
      manager.c.patch uploaded by eliel (license 64)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 10:27:54 +00:00
Joshua Colp
3faa47ab5b Instead of iterating through the entire epoll events array just look at the ones that will actually contain data. (props to eliel on IRC for this)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 04:37:36 +00:00
Mark Michelson
fe83f51186 Merged revisions 91292 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91292 | mmichelson | 2007-12-05 16:57:13 -0600 (Wed, 05 Dec 2007) | 3 lines

Reverting extra stuff I didn't mean to commit


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91293 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 22:57:57 +00:00
Mark Michelson
b32e39cbda Merged revisions 91273 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91273 | mmichelson | 2007-12-05 16:35:52 -0600 (Wed, 05 Dec 2007) | 11 lines

The 'G' option for Dial() did not properly handle the case where only a label was
provided. This was due to the fact that the answering channel did not have an extension
set, so ast_parseable_goto would fail. This fix eliminates the call to ast_parseable_goto
on the answering channel since it is a wasteful call. The answering channel and the calling
channel are both directed to the same extension and context, just different priorities, so
we can just copy the values from the calling channel to the answering channel and increment
the answering channel's priority.

(closes issue #11382, reported by jon, patch by me with correction by jon)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91291 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 22:55:49 +00:00
Tilghman Lesher
470a68b4aa Merged revisions 91237 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91237 | tilghman | 2007-12-05 15:38:13 -0600 (Wed, 05 Dec 2007) | 2 lines

Upgrade to the latest version of extra sounds

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91238 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 21:46:42 +00:00
Russell Bryant
aeb752fcf4 Merged revisions 91192 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91192 | russell | 2007-12-05 11:31:42 -0600 (Wed, 05 Dec 2007) | 10 lines

Make the lock in the threadstorage debugging code untracked to avoid a deadlock
on thread destruction.

(closes issue #11207)
Reported by: ys
Patches:
      threadstorage.c.diff uploaded by ys (license 281)

Also fixes an open bug report: (closes issue #11446)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91197 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 17:49:03 +00:00
Russell Bryant
f82c42a22e Resolve compiler warnings.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91193 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 17:44:59 +00:00
Tilghman Lesher
ce2f670228 Change cdr_manager to use a "CDR" level, rather than the (overcrowded) "call" level.
(Closes issue #11015)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 16:46:47 +00:00
Tilghman Lesher
d226c1d637 Added multiple name listing. (Closes issue #10413)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91172 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 16:25:52 +00:00
Joshua Colp
fd4f9d55e8 Remove second prefix line. Only need it documented once in the same file.
(closes issue #11472)
Reported by: eserra
Patches:
      http.conf.sample.diff uploaded by eserra (license 45)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 16:14:06 +00:00
Olle Johansson
0cc002a48a Rename "username" to "defaultuser" to match with "defaultip".
"Username" still works, but is deprecated.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91152 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 13:09:47 +00:00
Olle Johansson
10d047737f Remove the cseqs from "sip show channel" and make more place for the call ID.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91151 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 12:58:12 +00:00
Kevin P. Fleming
ddbea09940 revert part of my changes from earlier today since this code is no longer dependent on libpri.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91133 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 03:48:53 +00:00
Russell Bryant
3509415be1 Use ast_free() instead of free().
(closes issue #11309)
Reported by: Laureano
Patches: 
      res_odbc.c.patch uploaded by Laureano (license 265)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91131 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 03:34:51 +00:00
Russell Bryant
5c56fa7fb7 Merged revisions 91070 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91070 | russell | 2007-12-04 18:35:31 -0600 (Tue, 04 Dec 2007) | 11 lines

Fix some crashes in chan_iax2 that were reported as happening on Mac systems.
It turns out that the problem was the Mac version of the ast_atomic_fetchadd_int()
function.  The Mac atomic add function returns the _new_ value, while this function
is supposed to return the old value.  So, the crashes happened on unreferencing
objects.  If the reference count was decreased to 1, ao2_ref() thought that it
had been decreased to zero, and called the destructor.  However, there was still
an outstanding reference around.

(closes issue #11176)
(closes issue #11289)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 01:59:32 +00:00