mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-04 11:58:52 +00:00
(closes issue #13263)
Reported by: brainy Tested by: murf The specialized reset routine is tromping on the flags field of the CDR. I made a change to not reset the DISABLED bit. This should get rid of this problem. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@139074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
11
main/cdr.c
11
main/cdr.c
@@ -1071,14 +1071,17 @@ void ast_cdr_specialized_reset(struct ast_cdr *cdr, struct ast_flags *_flags)
|
||||
{
|
||||
struct ast_flags flags = { 0 };
|
||||
|
||||
if (_flags)
|
||||
ast_copy_flags(&flags, _flags, AST_FLAGS_ALL);
|
||||
|
||||
if (_flags)
|
||||
ast_copy_flags(&flags, _flags, AST_FLAGS_ALL);
|
||||
|
||||
/* Reset to initial state */
|
||||
ast_clear_flag(cdr, AST_FLAGS_ALL);
|
||||
if (ast_test_flag(cdr, AST_CDR_FLAG_POST_DISABLED)) { /* But do NOT lose the NoCDR() setting */
|
||||
ast_clear_flag(cdr, AST_FLAGS_ALL);
|
||||
ast_set_flag(cdr, AST_CDR_FLAG_POST_DISABLED);
|
||||
} else {
|
||||
ast_clear_flag(cdr, AST_FLAGS_ALL);
|
||||
}
|
||||
|
||||
memset(&cdr->start, 0, sizeof(cdr->start));
|
||||
memset(&cdr->end, 0, sizeof(cdr->end));
|
||||
memset(&cdr->answer, 0, sizeof(cdr->answer));
|
||||
|
Reference in New Issue
Block a user