[naviserver-devel] Config error
Hi! It seems that we have problems if Dev logging is enabled. By definition the ConfigGet may return NULL. Also the value of the section param passed to this (below) and other similar functions may also be NULL. In such cases the Ns_Log below crashes at dereferencing section and/or value ptrs. CONST char * Ns_ConfigString(CONST char *section, CONST char *key, CONST char *def) { CONST char *value; value = ConfigGet(section, key, 0, def); Ns_Log(Dev, config: %s:%s value=\%s\ default=\%s\ (string), section, key, value, def); return value ? value : def; } -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel
Re: [naviserver-devel] Config error
Even worse, the def argument may also be NULL. Throughout in this file the: Ns_Log(Dev, config: %s:%s value=\%s\ default=\%s\ (string), section, key, value, def); should be changed to something like Ns_Log(Dev, config: %s:%s value=\%s\ default=\%s\ (string), section ? section : , key, value ? value : , def ? def : ); On 05.02.2009, at 14:00, Vasiljevic Zoran wrote: Hi! It seems that we have problems if Dev logging is enabled. By definition the ConfigGet may return NULL. Also the value of the section param passed to this (below) and other similar functions may also be NULL. In such cases the Ns_Log below crashes at dereferencing section and/or value ptrs. CONST char * Ns_ConfigString(CONST char *section, CONST char *key, CONST char *def) { CONST char *value; value = ConfigGet(section, key, 0, def); Ns_Log(Dev, config: %s:%s value=\%s\ default=\%s\ (string), section, key, value, def); return value ? value : def; } -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel
Re: [naviserver-devel] Config error
On Linux it just should show null because underlying snprintf handles NULLs pretty well Vasiljevic Zoran wrote: Hi! It seems that we have problems if Dev logging is enabled. By definition the ConfigGet may return NULL. Also the value of the section param passed to this (below) and other similar functions may also be NULL. In such cases the Ns_Log below crashes at dereferencing section and/or value ptrs. CONST char * Ns_ConfigString(CONST char *section, CONST char *key, CONST char *def) { CONST char *value; value = ConfigGet(section, key, 0, def); Ns_Log(Dev, config: %s:%s value=\%s\ default=\%s\ (string), section, key, value, def); return value ? value : def; } -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel
Re: [naviserver-devel] Config error
On 05.02.2009, at 17:47, Vlad Seryakov wrote: On Linux it just should show null because underlying snprintf handles NULLs pretty well On Solaris, it cores all arround. -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel
Re: [naviserver-devel] Config error
The reason i think because Ns_DStringPrintf now uses OS's snprintf, before that it uses home-grown sprintf-like engine. Vasiljevic Zoran wrote: On 05.02.2009, at 17:47, Vlad Seryakov wrote: On Linux it just should show null because underlying snprintf handles NULLs pretty well On Solaris, it cores all arround. -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel
Re: [naviserver-devel] Config error
On Thu, Feb 5, 2009 at 5:21 PM, Vasiljevic Zoran z...@archiware.com wrote: On 05.02.2009, at 18:14, Vlad Seryakov wrote: The reason i think because Ns_DStringPrintf now uses OS's snprintf, before that it uses home-grown sprintf-like engine. Yeah, all uses of printf-like functions throughout the code base need to be checked. I know at least I've been sloppy about this. Most probably. But that will not help us of course. I will need to learn this brave new code repository thing... Don't forget to sign up with bitbucket.org and tell me your username. You'll be able to clone (checkout) and commit (locally) no problem as is, but you need to be authorized to push back. -- Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com ___ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel