From 6092bdc4b163977bb5f31df50e6b2a6def28aac5 Mon Sep 17 00:00:00 2001
From: Chernov Dmitriy <cd_work@mail.ru>
Date: 摹曛, 25 2月 2016 21:53:34 +0800
Subject: [PATCH] start #73

---
 libscpi/src/parser.c |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/libscpi/src/parser.c b/libscpi/src/parser.c
index 7849e2a..7720c09 100644
--- a/libscpi/src/parser.c
+++ b/libscpi/src/parser.c
@@ -219,7 +219,10 @@
                 result &= processCommand(context);
                 cmd_prev = state->programHeader;
             } else {
-                SCPI_ErrorPush(context, SCPI_ERROR_UNDEFINED_HEADER);
+                //SCPI_ErrorPush(context, SCPI_ERROR_UNDEFINED_HEADER);
+				/* test */
+				data[r-1]=0;
+				SCPI_ErrorPushEx(context, SCPI_ERROR_UNDEFINED_HEADER, data);
                 result = FALSE;
             }
         }
@@ -252,7 +255,8 @@
         const scpi_unit_def_t * units,
         const char * idn1, const char * idn2, const char * idn3, const char * idn4,
         char * input_buffer, size_t input_buffer_length, 
-        int16_t * error_queue_data, int16_t error_queue_size) {
+        scpi_error_t * error_queue_data, int16_t error_queue_size,
+		char * error_info_heap, size_t error_info_heap_length) {
     memset(context, 0, sizeof(*context));
     context->cmdlist = commands;
     context->interface = interface;
@@ -264,6 +268,9 @@
     context->buffer.data = input_buffer;
     context->buffer.length = input_buffer_length;
     context->buffer.position = 0;
+	context->error_info_heap.data = error_info_heap;
+	context->error_info_heap.position = 0;
+	context->error_info_heap.length = error_info_heap_length;
     SCPI_ErrorInit(context, error_queue_data, error_queue_size);
 }
 

--
Gitblit v1.9.1