on master help sign in
Badly avoiding passing a null ptr; need better fix
6293c5bMichael Snoyman
Text/Libyaml.hs+5−1
@@ -274,15 +274,19 @@ toEventRaw e f = withEventRaw $ \er -> do
274 EventDocumentEnd ->
274 EventDocumentEnd ->
275 c_yaml_document_end_event_initialize er 1
275 c_yaml_document_end_event_initialize er 1
276 EventScalar bs -> do
276 EventScalar bs -> do
277+ putStrLn $ "EventScalar " ++ show bs
277 let (fvalue, offset, len) = B.toForeignPtr bs
278 let (fvalue, offset, len) = B.toForeignPtr bs
278 withForeignPtr fvalue $ \value -> do
279 withForeignPtr fvalue $ \value -> do
279 let value' = value `plusPtr` offset
280 let value' = value `plusPtr` offset
280 len' = fromIntegral len
281 len' = fromIntegral len
282+ value'' = if ptrToIntPtr value' == 0
283+ then intPtrToPtr 1 -- c/api.c:827
284+ else value'
281 c_yaml_scalar_event_initialize
285 c_yaml_scalar_event_initialize
282 er
286 er
283 nullPtr
287 nullPtr
284 nullPtr
288 nullPtr
285− value'
289+ value''
286 len'
290 len'
287 0
291 0
288 1
292 1