Changeset 2e4bd1f in mainline


Ignore:
Timestamp:
2008-08-22T17:33:37Z (16 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
5ab597d
Parents:
80791a7
Message:

Cstyle and formatting changes.

Location:
uspace/lib/libc/generic/io
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libc/generic/io/asprintf.c

    r80791a7 r2e4bd1f  
    4444}
    4545
     46/** Allocate and print to string.
     47 *
     48 * @param strp          Address of the pointer where to store the address of
     49 *                      the newly allocated string.
     50 * @fmt                 Format strin.
     51 *
     52 * @return              Number of characters printed or a negative error code.
     53 */
    4654int asprintf(char **strp, const char *fmt, ...)
    4755{
  • uspace/lib/libc/generic/io/vsnprintf.c

    r80791a7 r2e4bd1f  
    3939
    4040struct vsnprintf_data {
    41         size_t size; /* total space for string */
    42         size_t len; /* count of currently used characters */
    43         char *string; /* destination string */
     41        size_t size;    /* total space for string */
     42        size_t len;     /* count of currently used characters */
     43        char *string;   /* destination string */
    4444};
    4545
    4646/** Write string to given buffer.
    47  * Write at most data->size characters including trailing zero. According to C99 has snprintf to return number
    48  * of characters that would have been written if enough space had been available. Hence the return value is not
    49  * number of really printed characters but size of input string. Number of really used characters
    50  * is stored in data->len.
    51  * @param str source string to print
    52  * @param count size of source string
    53  * @param data structure with destination string, counter of used space and total string size.
    54  * @return number of characters to print (not characters really printed!)
     47 * Write at most data->size characters including trailing zero. According to C99
     48 * has snprintf to return number of characters that would have been written if
     49 * enough space had been available. Hence the return value is not number of
     50 * really printed characters but size of input string. Number of really used
     51 * characters is stored in data->len.
     52 *
     53 * @param str           Source string to print.
     54 * @param count         Size of the source string.
     55 * @param data          Structure with destination string, counter of used space
     56 *                      and total string size.
     57 * @return              Number of characters to print (not characters really
     58 *                      printed!)
    5559 */
    56 static int vsnprintf_write(const char *str, size_t count, struct vsnprintf_data *data)
     60static int
     61vsnprintf_write(const char *str, size_t count, struct vsnprintf_data *data)
    5762{
    5863        size_t i;
     
    6469       
    6570        if (i == 1) {
    66                 /* We have only one free byte left in buffer => write there trailing zero */
     71                /*
     72                 * We have only one free byte left in buffer => write there
     73                 * trailing zero.
     74                 */
    6775                data->string[data->size - 1] = 0;
    6876                data->len = data->size;
     
    7179       
    7280        if (i <= count) {
    73                 /* We have not enought space for whole string with the trailing zero => print only a part of string */
    74                         memcpy((void *)(data->string + data->len), (void *)str, i - 1);
    75                         data->string[data->size - 1] = 0;
    76                         data->len = data->size;
    77                         return count;
     81                /*
     82                 * We have not enought space for whole string with the trailing
     83                 * zero => print only a part of string.
     84                 */
     85                memcpy((void *)(data->string + data->len), (void *)str, i - 1);
     86                data->string[data->size - 1] = 0;
     87                data->len = data->size;
     88                return count;
    7889        }
    7990       
     
    8192        memcpy((void *)(data->string + data->len), (void *)str, count);
    8293        data->len += count;
    83         /* Put trailing zero at end, but not count it into data->len so it could be rewritten next time */
     94        /*
     95         * Put trailing zero at end, but not count it into data->len so it could
     96         * be rewritten next time.
     97         */
    8498        data->string[data->len] = 0;
    8599
     
    88102
    89103/** Print formatted to the given buffer with limited size.
    90  * @param str   buffer
    91  * @param size  buffer size
    92  * @param fmt   format string
     104 * @param str           Buffer.
     105 * @param size          Bffer size.
     106 * @param fmt           Format string.
    93107 * \see For more details about format string see printf_core.
    94108 */
     
    96110{
    97111        struct vsnprintf_data data = {size, 0, str};
    98         struct printf_spec ps = {(int(*)(void *, size_t, void *)) vsnprintf_write, &data};
     112        struct printf_spec ps = {
     113                (int(*)(void *, size_t, void *)) vsnprintf_write,
     114                &data
     115        };
    99116
    100         /* Print 0 at end of string - fix the case that nothing will be printed */
     117        /*
     118         * Print 0 at end of string - fix the case that nothing will be printed.
     119         */
    101120        if (size > 0)
    102121                str[0] = 0;
Note: See TracChangeset for help on using the changeset viewer.