FileMapping.HasSharedMemoryValue broken?

I’m playing with the FileMappingMBS class to use shared memory. Basically, for now, I want to have 3 fields (the app version and 2 “parameters”).

One process creates the shared memory like this:

if not SharedMemory.CreateSharedMemory("hiifh"+SearchID.ToString,40960) then
  MessageBox "Can't allocate shared memory."
  Return
end if

No error is encountered. Next, some default values should be set. There lies my issue.
This is my test code:

if not (SharedMemory.SetSharedMemoryValue("Version",app.Version) or SharedMemory.SetSharedMemoryValue("SkipMethod","None") or SharedMemory.SetSharedMemoryValue("SkipPath","None")) then
  MessageBox "Can't set shared values."
  Return
end if
if not SharedMemory.HasSharedMemoryValue("Version") then
  MessageBox "Error 1."
  Return
end if
if not SharedMemory.HasSharedMemoryValue("SkipMethod") then
  MessageBox "Error 2."
  Return
end if

When I run this, I get the MessageBox “Error 2.” and I’m puzzled; while the value “Version” is fine and remembered, the value “SkipMethod” has been forgotten, immediately after having been set.
Only the first memory value set was held. A bug in the plugin or something I don’t get?

Forum for Xojo Programming Language and IDE. Copyright © 2021 Xojo, Inc.