timestamp_diff = (frame->ts * (rate / 1000)) - stream_sync->timestamp;
} else {
/* Video is special - internally we reference it as 1000 to preserve the RTP timestamp but
- * it is actualy 90000, this is why we can just directly subtract the timestamp.
+ * it is actually 90000, this is why we can just directly subtract the timestamp.
*/
rate = 90000;
timestamp_diff = frame->ts - stream_sync->timestamp;
* \param msg Event message string being built.
* \param prefix Prefix to add to the amount lines.
* \param amount Data to convert.
- * \param multipler to convert
+ * \param multiplier to convert
*
* \return Nothing
*/
*/
check_init(ast_media_cache_init(), "Media Cache");
- /* loads the cli_permissoins.conf file needed to implement cli restrictions. */
+ /* loads the cli_permissions.conf file needed to implement cli restrictions. */
ast_cli_perms_init(0);
ast_stun_init();
}
/* On success, newfd will be closed automatically if it was already
* open. We don't need to mention anything about that, we're updating
- * the value anway. */
+ * the value anyway. */
STORE_COMMON(res, "dup2", "%d,%d", oldfd, newfd); /* res == newfd */
return res;
}
*
* \note Must be right before data[].
*
- * \note Padding between fence and data[] is irrelevent because
+ * \note Padding between fence and data[] is irrelevant because
* data[] is used to fill in the lower fence check value and not
* the fence member. The fence member is to ensure that there
* is space reserved for the fence check value.
freed_regions_flush(&whales);
freed_regions_flush(&minnows);
- /* Peform atexit allocation dumps. */
+ /* Perform atexit allocation dumps. */
if (atexit_list || atexit_summary) {
ast_mutex_lock(®lock);
mm_atexit_dump();
}
#if defined(AO2_DEBUG)
if (!self->v_table->integrity) {
- /* No ingetrigy check available. Assume container is ok. */
+ /* No integrity check available. Assume container is ok. */
return 0;
}
#if defined(AO2_DEBUG)
/*! Increment the container linked object statistic. */
ao2_link_node_stat_fn link_stat;
- /*! Deccrement the container linked object statistic. */
+ /*! Decrement the container linked object statistic. */
ao2_unlink_node_stat_fn unlink_stat;
/*! Display container contents. (Method for debug purposes) */
ao2_container_display dump;
break;
}
- /* Node is a dupliate */
+ /* Node is a duplicate */
switch (options & AO2_CONTAINER_ALLOC_OPT_DUPS_MASK) {
default:
case AO2_CONTAINER_ALLOC_OPT_DUPS_ALLOW:
ast_audiohook_update_status(audiohook, AST_AUDIOHOOK_STATUS_DONE);
}
- /* Drop any manipulaters */
+ /* Drop any manipulators */
while ((audiohook = AST_LIST_REMOVE_HEAD(&audiohook_list->manipulate_list, list))) {
ast_audiohook_update_status(audiohook, AST_AUDIOHOOK_STATUS_DONE);
audiohook->manipulate_callback(audiohook, NULL, NULL, 0);
int ast_bridge_suspend(struct ast_bridge *bridge, struct ast_channel *chan)
{
struct ast_bridge_channel *bridge_channel;
-/* XXX ASTERISK-21271 the case of a disolved bridge while channel is suspended is not handled. */
+/* XXX ASTERISK-21271 the case of a dissolved bridge while channel is suspended is not handled. */
/* XXX ASTERISK-21271 suspend/unsuspend needs to be rethought. The caller must block until it has successfully suspended the channel for temporary control. */
/* XXX ASTERISK-21271 external suspend/unsuspend needs to be eliminated. The channel may be playing a file at the time and stealing it then is not good. */
int ast_bridge_unsuspend(struct ast_bridge *bridge, struct ast_channel *chan)
{
struct ast_bridge_channel *bridge_channel;
-/* XXX ASTERISK-21271 the case of a disolved bridge while channel is suspended is not handled. */
+/* XXX ASTERISK-21271 the case of a dissolved bridge while channel is suspended is not handled. */
ast_bridge_lock(bridge);
* 2) TRANSFER_BLOND: Transferer hangs up or presses DTMF swap sequence
* and configured atxferdropcall setting is yes.
* 3) TRANSFER_BLOND_NONFINAL: Transferer hangs up or presses DTMF swap
- * sequence and configured atxferdroppcall setting is no.
+ * sequence and configured atxferdropcall setting is no.
* 4) TRANSFER_CONSULTING: Transfer target answers the call.
* 5) TRANSFER_REBRIDGE: Transfer target hangs up, call to transfer target
* times out, or transferer presses DTMF abort sequence.
* 2) TRANSFER_BLOND: Transferer hangs up or presses DTMF swap sequence
* and configured atxferdropcall setting is yes.
* 3) TRANSFER_BLOND_NONFINAL: Transferer hangs up or presses DTMF swap
- * sequence and configured atxferdroppcall setting is no.
+ * sequence and configured atxferdropcall setting is no.
* 4) TRANSFER_DOUBLECHECKING: Transfer target answers the call
* 5) TRANSFER_RESUME: Transfer target hangs up, call to transfer target
* times out, or transferer presses DTMF abort sequence.
/*
* Stage a snapshot to ensure that a snapshot is always done
- * on the recall channel so earler COLP and CLID setup will
+ * on the recall channel so earlier COLP and CLID setup will
* get published.
*/
ast_channel_stage_snapshot(recall);
char xfer_exten[AST_MAX_EXTENSION] = "";
struct ast_bridge_features_blind_transfer *blind_transfer = hook_pvt;
const char *xfer_context;
- char *goto_on_blindxfr;
+ char *goto_on_blindxfer;
ast_verb(3, "Channel %s: Started DTMF blind transfer.\n",
ast_channel_name(bridge_channel->chan));
ast_channel_lock(bridge_channel->chan);
xfer_context = ast_strdupa(get_transfer_context(bridge_channel->chan,
blind_transfer ? blind_transfer->context : NULL));
- goto_on_blindxfr = ast_strdupa(S_OR(pbx_builtin_getvar_helper(bridge_channel->chan,
+ goto_on_blindxfer = ast_strdupa(S_OR(pbx_builtin_getvar_helper(bridge_channel->chan,
"GOTO_ON_BLINDXFR"), ""));
ast_channel_unlock(bridge_channel->chan);
ast_debug(1, "Channel %s: Blind transfer target '%s@%s'\n",
ast_channel_name(bridge_channel->chan), xfer_exten, xfer_context);
- if (!ast_strlen_zero(goto_on_blindxfr)) {
+ if (!ast_strlen_zero(goto_on_blindxfer)) {
const char *chan_context;
const char *chan_exten;
int chan_priority;
ast_debug(1, "Channel %s: After transfer, transferrer goes to %s\n",
- ast_channel_name(bridge_channel->chan), goto_on_blindxfr);
+ ast_channel_name(bridge_channel->chan), goto_on_blindxfer);
ast_channel_lock(bridge_channel->chan);
chan_context = ast_strdupa(ast_channel_context(bridge_channel->chan));
chan_priority = ast_channel_priority(bridge_channel->chan);
ast_channel_unlock(bridge_channel->chan);
ast_bridge_set_after_go_on(bridge_channel->chan,
- chan_context, chan_exten, chan_priority, goto_on_blindxfr);
+ chan_context, chan_exten, chan_priority, goto_on_blindxfer);
}
if (ast_bridge_transfer_blind(0, bridge_channel->chan, xfer_exten, xfer_context,
blind_transfer_cb, bridge_channel->chan) != AST_BRIDGE_TRANSFER_SUCCESS
- && !ast_strlen_zero(goto_on_blindxfr)) {
+ && !ast_strlen_zero(goto_on_blindxfer)) {
ast_bridge_discard_after_goto(bridge_channel->chan);
}
}
/*!
- * \brief Clean up a syncrhonization bridge object.
+ * \brief Clean up a synchronization bridge object.
*
* This frees fields within the synchronization object and removes
* it from the list of active synchronization objects.
static int bucket_copy(const char *infile, const char *outfile)
{
int ifd, ofd, len;
- char buf[4096]; /* XXX make it lerger. */
+ char buf[4096]; /* XXX make it larger. */
if ((ifd = open(infile, O_RDONLY)) < 0) {
ast_log(LOG_WARNING, "Unable to open %s in read-only mode, error: %s\n", infile, strerror(errno));
continue;
}
/*
- * We can tollerate an error on the checksum character since the
+ * We can tolerate an error on the checksum character since the
* checksum character is the last character in the message and
* it validates the message.
*
* and "SIP"
*
* \note This really should be an array of characters in case this payload
- * is sent accross an IAX2 link. However, this would not make too much sense
+ * is sent across an IAX2 link. However, this would not make too much sense
* given this type may not be recognized by the other end.
* Protection may be necessary to prevent it from being transmitted.
*
* for recall. If a CCNR request comes in, then we will
* have to mark the list as unfit for recall since this
* is a clear indicator that the person at the monitored
- * device has gone away and is actuall not fit to be
+ * device has gone away and is actually not fit to be
* recalled
*/
int fit_for_recall;
* Context dialed
*
* The original context dialed. This is used
- * so that when performaing a recall, we can
+ * so that when performing a recall, we can
* call into the proper context
*/
char context[AST_CHANNEL_NAME];
ast_tvdiff_ms(ast_tvnow(), *ast_channel_dtmf_tv(chan)) < 2*AST_MIN_DTMF_GAP) {
/*
* We're not in the middle of a digit, but it hasn't been long enough
- * since the last digit, so we'll have to trigger DTMF furtheron.
+ * since the last digit, so we'll have to trigger DTMF further on.
* Using 2 times AST_MIN_DTMF_GAP to trigger readq reading for possible
* buffered next dtmf event
*/
switch (res) {
case AST_TIMING_EVENT_EXPIRED:
if (ast_timer_ack(ast_channel_timer(chan), 1) < 0) {
- ast_log(LOG_ERROR, "Failed to acknoweldge timer in ast_read\n");
+ ast_log(LOG_ERROR, "Failed to acknowledge timer in ast_read\n");
goto done;
}
break;
}
} else if (trigger_dtmf_emulating) {
- /* generate null frame to trigger dtmf emualating */
+ /* generate null frame to trigger dtmf emulating */
f = &ast_null_frame;
break;
} else {
ast_channel_unlock(original);
ast_indicate(original, -1);
- /* Start the masquerade channel contents rearangement. */
+ /* Start the masquerade channel contents rearrangement. */
ast_channel_lock_both(original, clonechan);
ast_debug(1, "Actually Masquerading %s(%u) into the structure of %s(%u)\n",
char dtmf_digit_to_emulate; /*!< Digit being emulated */
char sending_dtmf_digit; /*!< Digit this channel is currently sending out. (zero if not sending) */
struct timeval sending_dtmf_tv; /*!< The time this channel started sending the current digit. (Invalid if sending_dtmf_digit is zero.) */
- struct stasis_topic *topic; /*!< Topic for trhis channel */
+ struct stasis_topic *topic; /*!< Topic for this channel */
struct stasis_forward *channel_forward; /*!< Subscription for event forwarding to all channel topic */
struct stasis_forward *endpoint_forward; /*!< Subscription for event forwarding to endpoint's topic */
struct ast_stream_topology *stream_topology; /*!< Stream topology */
if (newcat) {
ast_category_destroy(newcat);
}
- ast_log(LOG_ERROR, "Inheritence requested, but allocation failed\n");
+ ast_log(LOG_ERROR, "Inheritance requested, but allocation failed\n");
return -1;
}
}
error = 1;
goto uint32_done;
}
- /* strtoul will happilly and silently negate negative numbers */
+ /* strtoul will happily and silently negate negative numbers */
arg = ast_skip_blanks(arg);
if (*arg == '-') {
error = 1;
/* fields in third byte */
unsigned qr:1; /*!< response flag */
unsigned opcode:4; /*!< purpose of message */
- unsigned aa:1; /*!< authoritive answer */
+ unsigned aa:1; /*!< authoritative answer */
unsigned tc:1; /*!< truncated message */
unsigned rd:1; /*!< recursion desired */
/* fields in fourth byte */
/* fields in third byte */
unsigned rd:1; /*!< recursion desired */
unsigned tc:1; /*!< truncated message */
- unsigned aa:1; /*!< authoritive answer */
+ unsigned aa:1; /*!< authoritative answer */
unsigned opcode:4; /*!< purpose of message */
unsigned qr:1; /*!< response flag */
/* fields in fourth byte */
e->command = "dnsmgr refresh";
e->usage =
"Usage: dnsmgr refresh [pattern]\n"
- " Peforms an immediate refresh of the managed DNS entries.\n"
+ " Performs an immediate refresh of the managed DNS entries.\n"
" Optional regular expression pattern is used to filter the entries to refresh.\n";
return NULL;
case CLI_GENERATE:
periods_in_block = s->block_size * freq / sample_rate;
- /* Make sure we will have at least 5 periods at target frequency for analisys.
+ /* Make sure we will have at least 5 periods at target frequency for analysis.
This may make block larger than expected packet and will make squelching impossible
but at least we will be detecting the tone */
if (periods_in_block < 5) {
}
/* Make the regex case-insensitive if the 'i' flag is present. This assumes you
- * aren't using 'i' as a delimiter which, altough dubious, does not appear to be
+ * aren't using 'i' as a delimiter which, although dubious, does not appear to be
* explicitly non-compliant */
if (regexp[regexp_len - 1] == 'i') {
re_flags |= REG_ICASE;
ast_log(LOG_WARNING, "Error during regex substitution. Invalid pmatch index.\n");
return -1;
}
- /* pmatch len is 10. we are garanteed a single char 0-9 is a valid index */
+ /* pmatch len is 10. we are guaranteed a single char 0-9 is a valid index */
size = pmatch[matchindex].rm_eo - pmatch[matchindex].rm_so;
if (size > d_len) {
ast_log(LOG_WARNING, "Not enough space during NAPTR regex substitution.\n");
* The "number" parameter includes a leading '+' if it's a full E.164 number (and not ISN)
* We need to preserve that as the regex inside NAPTRs expect the +.
*
- * But for the domain generation, the '+' is a nuissance, so we get rid of it.
+ * But for the domain generation, the '+' is a nuisance, so we get rid of it.
*/
ast_copy_string(naptrinput, number[0] == 'n' ? number + 1 : number, sizeof(naptrinput));
if (number[0] == '+') {
* need to allocate these structures because they are not used.
*
* \param allocate_applicationmap See previous explanation
- * \retval NULL Failed to alloate configuration
+ * \retval NULL Failed to allocate configuration
* \retval non-NULL Allocated configuration
*/
static struct features_config *__features_config_alloc(int allocate_applicationmap)
/* applicationmap and featuregroups are purposely not copied. A channel's applicationmap
* is produced on the fly when ast_get_chan_applicationmap() is called
- * NOTE: This does not apply to the global cfg->applicationmap and cfg->featuresgroups
+ * NOTE: This does not apply to the global cfg->applicationmap and cfg->featuregroups
*/
}
static int copy(const char *infile, const char *outfile)
{
int ifd, ofd, len;
- char buf[4096]; /* XXX make it lerger. */
+ char buf[4096]; /* XXX make it larger. */
if ((ifd = open(infile, O_RDONLY)) < 0) {
ast_log(LOG_WARNING, "Unable to open %s in read-only mode\n", infile);
/* And finally we return */
/* Bit 8 : Parity error */
- /* Bit 9 : Framming error*/
+ /* Bit 9 : Framing error*/
*outbyte = a;
fskd->state = STATE_SEARCH_STARTBIT;
/* And finally we return
* Bit 8 : Parity error
- * Bit 9 : Framming error
+ * Bit 9 : Framing error
*/
*outbyte = a;
/*! \file
*
- * \brief I/O Managment (Derived from Cheops-NG)
+ * \brief I/O Management (Derived from Cheops-NG)
*
* \author Mark Spencer <markster@digium.com>
*/
<xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
</syntax>
<description>
- <para>A 'Ping' action will ellicit a 'Pong' response. Used to keep the
+ <para>A 'Ping' action will elicit a 'Pong' response. Used to keep the
manager connection open.</para>
</description>
</manager>
</parameter>
</syntax>
<description>
- <para>This action will ellicit a <literal>Success</literal> response. Whenever
+ <para>This action will elicit a <literal>Success</literal> response. Whenever
a manager event is queued. Once WaitEvent has been called on an HTTP manager
session, events will be generated and queued.</para>
</description>
/*!
* \note There is approximately a 1 in 1.8E19 chance that the following
* calculation will produce 0, which is an invalid ID, but due to the
- * properties of the rand() function (and the constantcy of s), that
+ * properties of the rand() function (and the constancy of s), that
* won't happen twice in a row.
*/
while ((session->managerid = ast_random() ^ (unsigned long) session) == 0) {
* Hope the limit on stack depth won't be a problem... this routine should
* be pretty lean as far a stack usage goes. Any non-match terminates the recursion down a branch.
*
- * In the above example, with the number "3077549999" as the pattern, the traversor could match extensions a, b and d. All are
+ * In the above example, with the number "3077549999" as the pattern, the traverser could match extensions a, b and d. All are
* of length 10; they have total specificities of 24580, 10246, and 25090, respectively, not that this matters
* at all. (b) wins purely because the first character "3" is much more specific (lower specificity) than "N". I have
* left the specificity totals in the code as an artifact; at some point, I will strip it out.
* and MATCHMORE. Only allowed at the end of a pattern.
* In the core routine, ! causes a match with a return code of 2.
* In turn, depending on the search mode: (XXX check if it is implemented)
- * - E_MATCH retuns 1 (does match)
+ * - E_MATCH returns 1 (does match)
* - E_MATCHMORE returns 0 (no match)
* - E_CANMATCH returns 1 (does match)
*
}
hint_new->exten = e;
if (strstr(e->app, "${") && e->exten[0] == '_') {
- /* The hint is dynamic and hasn't been evaluted yet */
+ /* The hint is dynamic and hasn't been evaluated yet */
hint_new->laststate = AST_DEVICE_INVALID;
hint_new->last_presence_state = AST_PRESENCE_INVALID;
} else {
static void *pbx_thread(void *data)
{
- /* Oh joyeous kernel, we're a new thread, with nothing to do but
+ /* Oh joyous kernel, we're a new thread, with nothing to do but
answer this channel and get it going.
*/
/* NOTE:
}
/*!
- * \note This function locks contexts list by &conlist, search for the rigt context
+ * \note This function locks contexts list by &conlist, search for the right context
* structure, leave context list locked and call ast_context_remove_switch2
* which removes switch, unlock contexts list and return ...
*/
if (!hint) {
/*
* Notify watchers of this removed hint later when we aren't
- * encumberd by so many locks.
+ * encumbered by so many locks.
*/
AST_LIST_INSERT_HEAD(&hints_removed, saved_hint, list);
} else {
return -1;
}
- /* If we are adding a hint evalulate in variables and global variables */
+ /* If we are adding a hint evaluate in variables and global variables */
if (priority == PRIORITY_HINT && strstr(application, "${") && extension[0] != '_') {
int inhibited;
struct ast_channel *c = ast_dummy_channel_alloc();
{
struct ast_custom_function *acf;
/* Maximum number of characters added by terminal coloring is 22 */
- char infotitle[64 + AST_MAX_APP + 22], syntitle[40], destitle[40], argtitle[40], seealsotitle[40];
+ char infotitle[64 + AST_MAX_APP + 22], syntitle[40], desctitle[40], argtitle[40], seealsotitle[40];
char info[64 + AST_MAX_APP], *synopsis = NULL, *description = NULL, *seealso = NULL;
char stxtitle[40], *syntax = NULL, *arguments = NULL;
int syntax_size, description_size, synopsis_size, arguments_size, seealso_size;
snprintf(info, sizeof(info), "\n -= Info about function '%s' =- \n\n", acf->name);
term_color(infotitle, info, COLOR_MAGENTA, 0, sizeof(infotitle));
term_color(syntitle, "[Synopsis]\n", COLOR_MAGENTA, 0, 40);
- term_color(destitle, "[Description]\n", COLOR_MAGENTA, 0, 40);
+ term_color(desctitle, "[Description]\n", COLOR_MAGENTA, 0, 40);
term_color(stxtitle, "[Syntax]\n", COLOR_MAGENTA, 0, 40);
term_color(argtitle, "[Arguments]\n", COLOR_MAGENTA, 0, 40);
term_color(seealsotitle, "[See Also]\n", COLOR_MAGENTA, 0, 40);
}
ast_cli(a->fd, "%s%s%s\n\n%s%s\n\n%s%s\n\n%s%s\n\n%s%s\n",
- infotitle, syntitle, synopsis, destitle, description,
+ infotitle, syntitle, synopsis, desctitle, description,
stxtitle, syntax, argtitle, arguments, seealsotitle, seealso);
ast_free(arguments);
* - 3,4,...,20
* - 30,40,...,90
*
- * - hundereds - 100 - sto, 200 - 2ste, 300,400 3,4sta, 500,600,...,900 5,6,...9set
+ * - hundreds - 100 - sto, 200 - 2ste, 300,400 3,4sta, 500,600,...,900 5,6,...9set
*
* for each number 10^(3n + 3) exist 3 files represented as:
- * 1 tousand = jeden tisic = 1_E3
- * 2,3,4 tousands = dva,tri,ctyri tisice = 2-3_E3
- * 5,6,... tousands = pet,sest,... tisic = 5_E3
+ * 1 thousand = jeden tisic = 1_E3
+ * 2,3,4 thousands = dva,tri,ctyri tisice = 2-3_E3
+ * 5,6,... thousands = pet,sest,... tisic = 5_E3
*
* million = _E6
* miliard = _E9
* etc...
*
- * tousand, milion are gender male, so 1 and 2 is 1m 2m
+ * thousand, milion are gender male, so 1 and 2 is 1m 2m
* miliard is gender female, so 1 and 2 is 1w 2w
*/
static int ast_say_number_full_cs(struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd)
int playh = 0;
char fn[256] = "";
- int hundered = 0;
+ int hundred = 0;
int left = 0;
int length = 0;
snprintf(fn, sizeof(fn), "digits/%d", (num /10) * 10);
num %= 10;
} else if (num < 1000) {
- hundered = num / 100;
- if ( hundered == 1 ) {
+ hundred = num / 100;
+ if ( hundred == 1 ) {
ast_copy_string(fn, "digits/1sto", sizeof(fn));
- } else if ( hundered == 2 ) {
+ } else if ( hundred == 2 ) {
ast_copy_string(fn, "digits/2ste", sizeof(fn));
} else {
- res = ast_say_number_full_cs(chan, hundered, ints, language, options, audiofd, ctrlfd);
+ res = ast_say_number_full_cs(chan, hundred, ints, language, options, audiofd, ctrlfd);
if (res)
return res;
- if (hundered == 3 || hundered == 4) {
+ if (hundred == 3 || hundred == 4) {
ast_copy_string(fn, "digits/sta", sizeof(fn));
- } else if ( hundered > 4 ) {
+ } else if ( hundred > 4 ) {
ast_copy_string(fn, "digits/set", sizeof(fn));
}
}
- num -= (hundered * 100);
+ num -= (hundred * 100);
} else { /* num > 1000 */
length = (int)log10(num)+1;
while ( (length % 3 ) != 1 ) {
if (res)
return res;
}
- if ( left >= 5 ) { /* >= 5 have the same declesion */
+ if ( left >= 5 ) { /* >= 5 have the same declension */
snprintf(fn, sizeof(fn), "digits/5_E%d", length - 1);
} else if ( left >= 2 && left <= 4 ) {
snprintf(fn, sizeof(fn), "digits/2-4_E%d", length - 1);
Like english, numbers up to 20 are a single 'word', and others
compound, but with exceptions.
For example 21 is not twenty-one, but there is a single word in 'it'.
- Idem for 28 (ie when a the 2nd part of a compund number
+ Idem for 28 (ie when a the 2nd part of a compound number
starts with a vowel)
There are exceptions also for hundred, thousand and million.
* ast_say_number_full_he mean, but it seems
* safe to pass -1 there.
*
- * At least in one of the pathes :-(
+ * At least in one of the paths :-(
*/
res = ast_say_number_full_he(chan, tm.tm_mday, ints, lang, "m", -1, -1);
break;
res = ast_say_number_full_he(chan, tm.tm_year + 1900, ints, lang, "f", -1, -1);
break;
case 'I':
- case 'l': /* 12-Hour -> we do not support 12 hour based langauges in Hebrew */
+ case 'l': /* 12-Hour -> we do not support 12 hour based languages in Hebrew */
case 'H':
case 'k': /* 24-Hour */
res = ast_say_number_full_he(chan, tm.tm_hour, ints, lang, "f", -1, -1);
and digits/hundred-100 to utter "ekaton"
-> digits/hundred-[100...1000] :: A pronunciation of hundreds from 100 to 1000 e.g 400 =
"terakosia". Here again we use hundreds/1000 for "xilia"
- and digits/thousnds for "xiliades"
+ and digits/thousands for "xiliades"
*/
static int ast_say_number_full_gr(struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd)
{
* A list of the files that you need to create
* - digits/female/1..4 : "Mia, dyo , treis, tesseris "
* - digits/kai : "KAI"
- * - didgits : "h wra"
+ * - digits : "h wra"
* - digits/p-m : "meta meshmbrias"
* - digits/a-m : "pro meshmbrias"
*/
* They are the genative singular which we represent with the suffix "x1" and
* the genative plural which we represent with the suffix "x2". The base names
* of the soundfiles remain in English. For example:
- * - 1 degree (soudfile says "gradus")
+ * - 1 degree (soundfile says "gradus")
* - 2 degreex1 (soundfile says "gradusa")
* - 5 degreex2 (soundfile says "gradusov")
*/
/* Move remaining data to the front if applicable */
if (s->len) {
/* In principle this should all be fine because if we are sending
- G.729 VAD, the next timestamp will take over anyawy */
+ G.729 VAD, the next timestamp will take over anyway */
memmove(s->data, s->data + len, s->len);
if (!ast_tvzero(s->delivery)) {
/* If we have delivery time, increment it, otherwise, leave it at 0 */
*
* \return Previous stasis entry snapshot.
*/
-static struct stasis_message *cache_udpate(struct stasis_cache_entry *cached_entry, const struct ast_eid *eid, struct stasis_message *new_snapshot)
+static struct stasis_message *cache_update(struct stasis_cache_entry *cached_entry, const struct ast_eid *eid, struct stasis_message *new_snapshot)
{
struct stasis_message *old_snapshot;
int is_remote;
}
} else if (cached_entry) {
/* Update snapshot in cache */
- snapshots.old = cache_udpate(cached_entry, eid, new_snapshot);
+ snapshots.old = cache_update(cached_entry, eid, new_snapshot);
} else {
/* Insert into the cache */
cached_entry = cache_entry_create(type, id, new_snapshot);
static int queue_fd = -1;
/*
- * static struct state *psx_sp and associated code will guard againt
+ * static struct state *psx_sp and associated code will guard against
* add_notify() called repeatedly for /usr/share/zoneinfo/posixrules
* without zonelist check as a result of some errors
* (any code where tzparse() is called if tzload() fails --
/*!
* \internal
- * \brief Compare the STUN tranaction IDs.
+ * \brief Compare the STUN transaction IDs.
*
* \param left Transaction ID.
* \param right Transaction ID.
struct ao2_container *active_threads;
/*!
* \brief The container of idle threads.
- * Idle threads are those that are currenly waiting to run tasks
+ * Idle threads are those that are currently waiting to run tasks
*/
struct ao2_container *idle_threads;
/*!
}
/*!
- * \brief Create a timeval first onverting the given microsecond value
+ * \brief Create a timeval first converting the given microsecond value
* into seconds and microseconds
*
* \param usec microsecond value
/*!
* \brief a matrix that, for any pair of supported formats,
* indicates the total cost of translation and the first step.
- * The full path can be reconstricted iterating on the matrix
+ * The full path can be reconstructed iterating on the matrix
* until step->dstfmt == desired_format.
*
* Array indexes are 'src' and 'dest', in that order.
}
/* Encode the error recovery type */
buf[len++] = 0x80;
- /* Span is defined as an inconstrained integer, which it dumb. It will only
+ /* Span is defined as an unconstrained integer, which it dumb. It will only
ever be a small value. Treat it as such. */
buf[len++] = 1;
buf[len++] = span;
with for this lock?
To answer such questions, just call this routine before you would normally try
- to aquire a lock. It doesn't do anything if the lock is not acquired. If the
+ to acquire a lock. It doesn't do anything if the lock is not acquired. If the
lock is taken, it will publish a line or two to the console via ast_log().
Sometimes, the lock message is pretty uninformative. For instance, you might
- find that the lock is being aquired deep within the astobj2 code; this tells
+ find that the lock is being acquired deep within the astobj2 code; this tells
you little about higher level routines that call the astobj2 routines.
But, using gdb, you can set a break at the ast_log below, and for that
breakpoint, you can set the commands:
if (i->field) {
ast_string_field_ptr_set(d, i->field, src);
} else {
- /* Special cases that require additional procesing */
+ /* Special cases that require additional processing */
if (!strcasecmp(i->key, "algorithm=")) {
if (strcasecmp(src, "MD5")) {
ast_log(LOG_WARNING, "Digest algorithm: \"%s\" not supported.\n", src);