small compression
[carveJwlIkooP6JGAAIwe30JlM.git] / addon.c
diff --git a/addon.c b/addon.c
index fcec0b9f6e8ba945dc8d46a6197ef750368819c5..ef92b0083ce4f1ba1c6a49a39d2a0e4c4a191aea 100644 (file)
--- a/addon.c
+++ b/addon.c
@@ -306,14 +306,11 @@ static addon_reg *addon_mount_workshop_folder( PublishedFileId_t workshop_id,
    }
 
    enum addon_type type = k_addon_type_none;
-   vg_msg root = {0};
-   root.buf = reg->metadata;
-   root.len = reg->metadata_len;
-   root.max = sizeof(reg->metadata);
+   vg_msg msg;
+   vg_msg_init( &msg, reg->metadata, reg->metadata_len );
 
-   vg_msg workshop = root;
-   if( vg_msg_seekframe( &workshop, "workshop", k_vg_msg_first )){
-      type = vg_msg_seekkvu32( &workshop, "type", k_vg_msg_first );
+   if( vg_msg_seekframe( &msg, "workshop" )){
+      type = vg_msg_getkvu32( &msg, "type", 0 );
    }
 
    if( type == k_addon_type_none ){
@@ -358,10 +355,8 @@ static addon_reg *addon_mount_local_addon( const char *folder,
 
    if( reg->metadata_len == 0 ){
       /* create our own content commands */
-      vg_msg msg = {0};
-      msg.buf = reg->metadata;
-      msg.len = 0;
-      msg.max = sizeof(reg->metadata);
+      vg_msg msg;
+      vg_msg_init( &msg, reg->metadata, sizeof(reg->metadata) );
 
       u32 content_count = 0;
 
@@ -394,7 +389,7 @@ static addon_reg *addon_mount_local_addon( const char *folder,
 
       if( !content_count ) return NULL;
       if( msg.error == k_vg_msg_error_OK )
-         reg->metadata_len = msg.cur;
+         reg->metadata_len = msg.cur.co;
       else{
          vg_error( "Error creating metadata: %d\n", msg.error );
          return NULL;
@@ -624,12 +619,10 @@ static int addon_cache_load_request( enum addon_type type, u16 id,
     * --------------------------------- */
    vg_str content_path = folder;
 
-   vg_msg root = {0};
-   root.buf = reg->metadata;
-   root.len = reg->metadata_len;
-   root.max = sizeof(reg->metadata);
+   vg_msg msg;
+   vg_msg_init( &msg, reg->metadata, reg->metadata_len );
 
-   const char *kv_content = vg_msg_seekkvstr( &root, "content", 0 );
+   const char *kv_content = vg_msg_getkvstr( &msg, "content" );
    if( kv_content ){
       vg_strcat( &content_path, "/" );
       vg_strcat( &content_path, kv_content );