/* ---------------------------------------------------------------------------- libconfig - A library for processing structured configuration files Copyright (C) 2005-2010 Mark A Lindner This file is part of libconfig. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, see . ---------------------------------------------------------------------------- */ #include #include #include /* This example reads the configuration file 'example.cfg', adds a new * movie record to the movies list, and writes the updated configuration to * 'updated.cfg'. */ int main(int argc, char **argv) { static const char *output_file = "updated.cfg"; config_t cfg; config_setting_t *root, *setting, *movie; config_init(&cfg); /* Read the file. If there is an error, report it and exit. */ if(! config_read_file(&cfg, "example.cfg")) { fprintf(stderr, "%s:%d - %s\n", config_error_file(&cfg), config_error_line(&cfg), config_error_text(&cfg)); config_destroy(&cfg); return(EXIT_FAILURE); } /* Find the 'movies' setting. Add intermediate settings if they don't yet * exist. */ root = config_root_setting(&cfg); setting = config_setting_get_member(root, "inventory"); if(!setting) setting = config_setting_add(root, "inventory", CONFIG_TYPE_GROUP); setting = config_setting_get_member(setting, "movies"); if(!setting) setting = config_setting_add(setting, "movies", CONFIG_TYPE_LIST); /* Create the new movie entry. */ movie = config_setting_add(setting, NULL, CONFIG_TYPE_GROUP); setting = config_setting_add(movie, "title", CONFIG_TYPE_STRING); config_setting_set_string(setting, "Buckaroo Banzai"); setting = config_setting_add(movie, "media", CONFIG_TYPE_STRING); config_setting_set_string(setting, "DVD"); setting = config_setting_add(movie, "price", CONFIG_TYPE_FLOAT); config_setting_set_float(setting, 12.99); setting = config_setting_add(movie, "qty", CONFIG_TYPE_INT); config_setting_set_float(setting, 20); /* Write out the updated configuration. */ if(! config_write_file(&cfg, output_file)) { fprintf(stderr, "Error while writing file.\n"); config_destroy(&cfg); return(EXIT_FAILURE); } fprintf(stderr, "Updated configuration successfully written to: %s\n", output_file); config_destroy(&cfg); return(EXIT_SUCCESS); } /* eof */ d8aa9e3ddf&follow=1'>driver for Samsung SPF by Sascha Plazarmichael10-3/+642 2012-02-21driver for Futaba VFD by Marcus Menzelmichael9-4/+484 2012-02-16teakLCM set GPIO='no' which produced linker errors (thanks to Marcus menzel f...michael1-1/+0 2012-02-15default model chnaged from 'generic' to 'M50530'michael1-1/+1 2012-02-14driver for TeakLCM by Andreas Thienemannmichael10-33/+1113 2012-02-10patch from Robert Tesch: support KIT120-5 and KIT129-6, GPO code repaired, us...michael1-20/+58 2012-01-16Patch for Driver EA232Graphic by Robert Reschmichael2-7/+70 2012-01-16scaletext patch from Stefan Kuhnemichael2-4/+16 2012-01-16update to automake 1.11.2michael3-44/+78 2012-01-08DPF driver by Stefan Kuhne 8note that you need libdpf)michael9-4/+337 2012-01-08[PATCH 2/2] gcc warnings by Jonathan McCrohanmichael1-1/+1 2012-01-08ATCH 1/2] gcc warnings by Jonathan McCrohanmichael1-2/+2 2011-12-26old ancient legacy port access disabled by defaultmichael6-162/+491 2011-12-22All compilation related issues in the headers have been fixed. Now each heade...mjona10-0/+11 2011-12-09Replaced parameter NoPowerCycle with PowerCyclesonic741-5/+5 2011-12-09Blit speedup, switch PICASO back to 9600 baud when exitingsonic741-47/+46 2011-12-08Removed compiler warningsonic741-1/+1 2011-12-08SGC supportsonic741-111/+254 2011-08-31Fix spelling errors. Flagged by Debian lintian checkjmccrohan4-4/+4 2011-07-28driver for Futaba MDM166A Graphic(96x16) vf-displays by Andreas Bracholdmichael9-2/+684 2011-07-27driver for Newhaven's NHD‐0420D3Z‐FL‐GBW. 4x20 LCD by Rusty Clarksonmichael9-4/+573 2011-07-27indentation :-(michael1-3/+3 2011-07-27magic bold escape char by Andrew Thompsonmichael1-1/+9 2011-07-27picoLCDGraphics needs keypad linkedmichael2-0/+2 2011-07-27various compiler warnings fixedmichael13-60/+39 2011-07-27Autoconf 2.68michael3-1455/+2751 2011-07-27run smoketest on all of my 8 coresmichael1-2/+2 2011-07-27indentationmichael4-330/+320 2011-07-27patch to replace outdate library libmpd with recent library libmpdclient from...michael2-240/+427 2011-07-27lcd4linux-wireless.patch from Hans de Goedemichael1-1/+1 2011-07-27st2205-width-height-swap.patch from Hans de Goedemichael1-2/+2 2011-07-27hwmon patch from Hans de Goedemichael1-0/+14 2011-07-27patch to support SureElectronicsDE-LD023 from Matt Joicemichael1-3/+16 2011-05-06Fixed keypad widget in GLCD2USBharbaum1-0/+7 2011-02-12timer.c: fixed detection of positive clock skew (and some typos)mzuther4-10/+10 2011-01-23timer.c: fixed clock skew detectionmzuther1-26/+46 2011-01-23timer.c: skip intermediate timer intervalsmzuther2-16/+46 2011-01-05fix for a bug introduced in the DE-LD021 drivermichael1-3/+3 2011-01-04indentationmichael2-3/+3 2011-01-04support for Sure Electronics DE-LD021 by Natanael Olaizmichael1-10/+8 2011-01-02driver for EFN LED modules by Tilman Glötznermichael9-21/+469 2010-11-28commented, corrected and beautified both timer and timer group codemzuther11-197/+511 2010-11-27finished commenting the timer codemzuther2-46/+138 2010-11-20started commenting the timer codemzuther5-52/+170 2010-11-19Added brightness support for GLCD2USBharbaum5-28/+8014