Commit cf9a64e4 authored by captainwong's avatar captainwong

update

parent c9557727
...@@ -14,46 +14,70 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_demo", "dll_demo\dll_de ...@@ -14,46 +14,70 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dll_demo", "dll_demo\dll_de
{EF267749-DA49-433D-BF4E-742D4BC7F1DA} = {EF267749-DA49-433D-BF4E-742D4BC7F1DA} {EF267749-DA49-433D-BF4E-742D4BC7F1DA} = {EF267749-DA49-433D-BF4E-742D4BC7F1DA}
EndProjectSection EndProjectSection
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp_dll_demo", "csharp_dll_demo\csharp_dll_demo.csproj", "{3381C5DE-57BF-425F-A3A6-B85DECF776D6}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64 Debug|x64 = Debug|x64
Debug|x86 = Debug|x86 Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64 Release|x64 = Release|x64
Release|x86 = Release|x86 Release|x86 = Release|x86
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|Any CPU.ActiveCfg = Debug|Win32
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x64.ActiveCfg = Debug|x64 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x64.ActiveCfg = Debug|x64
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x64.Build.0 = Debug|x64 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x64.Build.0 = Debug|x64
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x86.ActiveCfg = Debug|Win32 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x86.ActiveCfg = Debug|Win32
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x86.Build.0 = Debug|Win32 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Debug|x86.Build.0 = Debug|Win32
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|Any CPU.ActiveCfg = Release|Win32
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x64.ActiveCfg = Release|x64 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x64.ActiveCfg = Release|x64
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x64.Build.0 = Release|x64 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x64.Build.0 = Release|x64
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x86.ActiveCfg = Release|Win32 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x86.ActiveCfg = Release|Win32
{36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x86.Build.0 = Release|Win32 {36640D95-55AB-4DCF-9062-91A53203E6A9}.Release|x86.Build.0 = Release|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|Any CPU.ActiveCfg = Debug|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x64.ActiveCfg = Debug|x64 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x64.ActiveCfg = Debug|x64
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x64.Build.0 = Debug|x64 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x64.Build.0 = Debug|x64
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x86.ActiveCfg = Debug|Win32 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x86.ActiveCfg = Debug|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x86.Build.0 = Debug|Win32 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Debug|x86.Build.0 = Debug|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|Any CPU.ActiveCfg = Release|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x64.ActiveCfg = Release|x64 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x64.ActiveCfg = Release|x64
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x64.Build.0 = Release|x64 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x64.Build.0 = Release|x64
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x86.ActiveCfg = Release|Win32 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x86.ActiveCfg = Release|Win32
{EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x86.Build.0 = Release|Win32 {EA5A04AA-EE49-4059-81A0-765402A210E7}.Release|x86.Build.0 = Release|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|Any CPU.ActiveCfg = Debug|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x64.ActiveCfg = Debug|x64 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x64.ActiveCfg = Debug|x64
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x64.Build.0 = Debug|x64 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x64.Build.0 = Debug|x64
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x86.ActiveCfg = Debug|Win32 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x86.ActiveCfg = Debug|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x86.Build.0 = Debug|Win32 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Debug|x86.Build.0 = Debug|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|Any CPU.ActiveCfg = Release|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x64.ActiveCfg = Release|x64 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x64.ActiveCfg = Release|x64
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x64.Build.0 = Release|x64 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x64.Build.0 = Release|x64
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x86.ActiveCfg = Release|Win32 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x86.ActiveCfg = Release|Win32
{EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x86.Build.0 = Release|Win32 {EF267749-DA49-433D-BF4E-742D4BC7F1DA}.Release|x86.Build.0 = Release|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|Any CPU.ActiveCfg = Debug|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x64.ActiveCfg = Debug|x64 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x64.ActiveCfg = Debug|x64
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x64.Build.0 = Debug|x64 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x64.Build.0 = Debug|x64
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x86.ActiveCfg = Debug|Win32 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x86.ActiveCfg = Debug|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x86.Build.0 = Debug|Win32 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Debug|x86.Build.0 = Debug|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|Any CPU.ActiveCfg = Release|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x64.ActiveCfg = Release|x64 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x64.ActiveCfg = Release|x64
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x64.Build.0 = Release|x64 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x64.Build.0 = Release|x64
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x86.ActiveCfg = Release|Win32 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x86.ActiveCfg = Release|Win32
{76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x86.Build.0 = Release|Win32 {76899E2F-3026-4262-8D0A-EE7CED1020CF}.Release|x86.Build.0 = Release|Win32
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|x64.ActiveCfg = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|x64.Build.0 = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|x86.ActiveCfg = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Debug|x86.Build.0 = Debug|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|Any CPU.Build.0 = Release|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|x64.ActiveCfg = Release|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|x64.Build.0 = Release|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|x86.ActiveCfg = Release|Any CPU
{3381C5DE-57BF-425F-A3A6-B85DECF776D6}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
......
...@@ -11,5 +11,5 @@ ...@@ -11,5 +11,5 @@
//! 1 解析到正确、不完整的一包,需要缓存数据,下次继续处理 //! 1 解析到正确、不完整的一包,需要缓存数据,下次继续处理
//! 2 解析到错误的数据,需要清空缓冲区 //! 2 解析到错误的数据,需要清空缓冲区
DLL_FUNC DLL_FUNC
int parse(const char* pack, size_t pack_len, size_t& cb_commited); int parse(const char* pack, int pack_len, int* cb_commited);
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
<UseDebugLibraries>true</UseDebugLibraries> <UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset> <PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
<CLRSupport>false</CLRSupport>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
...@@ -95,6 +96,8 @@ ...@@ -95,6 +96,8 @@
<ConformanceMode>true</ConformanceMode> <ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<CallingConvention>Cdecl</CallingConvention>
<CompileAs>Default</CompileAs>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
...@@ -130,6 +133,7 @@ ...@@ -130,6 +133,7 @@
<PreprocessorDefinitions>_DEBUG;ADEMCOHB_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;ADEMCOHB_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode> <ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
...@@ -148,6 +152,7 @@ ...@@ -148,6 +152,7 @@
<PreprocessorDefinitions>NDEBUG;ADEMCOHB_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;ADEMCOHB_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode> <ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
......
...@@ -21,9 +21,11 @@ BOOL APIENTRY DllMain( HMODULE hModule, ...@@ -21,9 +21,11 @@ BOOL APIENTRY DllMain( HMODULE hModule,
return TRUE; return TRUE;
} }
int parse(const char* pack, size_t pack_len, size_t& cb_commited) int parse(const char* pack, int pack_len, int* cb_commited)
{ {
ademco::AdemcoPacket ap; ademco::AdemcoPacket ap;
auto result = ap.parse(pack, pack_len, cb_commited); size_t commited = 0;
auto result = ap.parse(pack, static_cast<size_t>(pack_len), commited);
*cb_commited = static_cast<int>(commited);
return static_cast<int>(result); return static_cast<int>(result);
} }
using System;
using System.Runtime.InteropServices;
namespace csharp_dll_demo
{
class Program
{
[DllImport(@"G:\dev_libs\ademco_hb\x64\Release\ademco_hb.dll",
EntryPoint = "parse",
CallingConvention = CallingConvention.Cdecl)]
public static extern Int32 parse(string buf, Int32 buf_len, ref Int32 commited);
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
//IntPtr commited = new IntPtr();
string raw = "\nC5C30053\"HENG-BO\"0000R000000L000000#90219125916578[#000000|1737 00 000]_09:11:19,08-05-2019\r";
Int32 commited = 0;
byte[] data = System.Text.Encoding.Default.GetBytes(raw);
Int32 res = parse(raw, raw.Length, ref commited);
Console.WriteLine("res={0:D}, commited={1:D}", res, commited);
}
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<Prefer32Bit>false</Prefer32Bit>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
</Project>
{
"version": 1,
"dgSpecHash": "FDUB06sqIrxY1NL2DCOnWir0yLn0cfS7UOQ3r27O7itJpNLP8ngEnZQ7woGolkt99yRPQK18ZL8ma5jkdqxccw==",
"success": true
}
\ No newline at end of file
{
"format": 1,
"restore": {
"G:\\dev_libs\\ademco_hb\\csharp_dll_demo\\csharp_dll_demo.csproj": {}
},
"projects": {
"G:\\dev_libs\\ademco_hb\\csharp_dll_demo\\csharp_dll_demo.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "G:\\dev_libs\\ademco_hb\\csharp_dll_demo\\csharp_dll_demo.csproj",
"projectName": "csharp_dll_demo",
"projectPath": "G:\\dev_libs\\ademco_hb\\csharp_dll_demo\\csharp_dll_demo.csproj",
"packagesPath": "C:\\Users\\Jack\\.nuget\\packages\\",
"outputPath": "G:\\dev_libs\\ademco_hb\\csharp_dll_demo\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
],
"configFilePaths": [
"C:\\Users\\Jack\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"netcoreapp2.1"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"netcoreapp2.1": {
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"netcoreapp2.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"target": "Package",
"version": "[2.1.0, )",
"autoReferenced": true
}
},
"imports": [
"net461"
],
"assetTargetFallback": true,
"warn": true
}
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Jack\.nuget\packages\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.2.0</NuGetToolVersion>
</PropertyGroup>
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.1.0\build\netcoreapp2.1\Microsoft.NETCore.App.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.1.0\build\netcoreapp2.1\Microsoft.NETCore.App.props')" />
</ImportGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.1.0\build\netcoreapp2.1\Microsoft.NETCore.App.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.1.0\build\netcoreapp2.1\Microsoft.NETCore.App.targets')" />
</ImportGroup>
</Project>
\ No newline at end of file
This diff is collapsed.
...@@ -11,23 +11,23 @@ ...@@ -11,23 +11,23 @@
int main() int main()
{ {
size_t cb_commited = 0; int cb_commited = 0;
{ {
char raw[] = "\nC5C30053\"HENG-BO\"0000R000000L000000#90219125916578[#000000|1737 00 000]_09:11:19,08-05-2019\r"; char raw[] = "\nC5C30053\"HENG-BO\"0000R000000L000000#90219125916578[#000000|1737 00 000]_09:11:19,08-05-2019\r";
int res = parse(raw, strlen(raw), cb_commited); int res = parse(raw, strlen(raw), &cb_commited);
assert(res == 0); assert(res == 0);
} }
{ {
char raw_not_enough[] = "\nC5C30053\"HENG-BO\"0000R000000L000000"; char raw_not_enough[] = "\nC5C30053\"HENG-BO\"0000R000000L000000";
int res = parse(raw_not_enough, strlen(raw_not_enough), cb_commited); int res = parse(raw_not_enough, strlen(raw_not_enough), &cb_commited);
assert(res == 1); assert(res == 1);
} }
{ {
char raw_error[] = "abcdeadfasdfasdfasd"; char raw_error[] = "abcdeadfasdfasdfasd";
int res = parse(raw_error, strlen(raw_error), cb_commited); int res = parse(raw_error, strlen(raw_error), &cb_commited);
assert(res == 2); assert(res == 2);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment