diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2009-11-25 00:45:27 +0000 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2009-11-25 00:45:27 +0000 |
commit | e5d8d21fd20516be53f873d269b469be109eca91 (patch) | |
tree | 14849d3e7e524f69d9f02be9ecfa61eeb5ab1baa /help.c | |
parent | 0ac1a37573f966d7a03b85816c583bd6976c402f (diff) |
Added in-memory help info, which I wanted to implement for ages already.
Sadly the way I'm using it now doesn't work yet since nogaim_init() is
called before help_init(). I'll fix that later. (Have to do that anyway
to at least make ForkDaemon mode work..)
Diffstat (limited to 'help.c')
-rw-r--r-- | help.c | 26 |
1 files changed, 25 insertions, 1 deletions
@@ -1,7 +1,7 @@ /********************************************************************\ * BitlBee -- An IRC to other IM-networks gateway * * * - * Copyright 2002-2005 Wilmer van der Gaast and others * + * Copyright 2002-2009 Wilmer van der Gaast and others * \********************************************************************/ /* Help file control */ @@ -168,3 +168,27 @@ char *help_get( help_t **help, char *title ) return NULL; } + +int help_add_mem( help_t **help, const char *title, const char *content ) +{ + help_t *h, *l = NULL; + + for( h = *help; h; h = h->next ) + { + if( g_strcasecmp( h->title, title ) == 0 ) + return 0; + + l = h; + } + + if( l ) + h = l->next = g_new0( struct help, 1 ); + else + *help = h = g_new0( struct help, 1 ); + h->fd = -1; + h->title = g_strdup( title ); + h->length = strlen( content ); + h->offset.mem_offset = g_strdup( content ); + + return 1; +} |