Giter Club home page Giter Club logo

Comments (1)

mwinkel-dev avatar mwinkel-dev commented on June 16, 2024

The Version 7 (and earlier) pattern does not apply to Version 8, because of an important difference in the node name definitions.

  • Version 8 defines a node name to be a 64 character array that always includes a null char terminator (thus a maximum of 63 visible characters).
  • Pre-v8 defined a node name as an array of 12 visible characters and an optional null terminator. Meaning that node name, A234567890B2, was stored without a trailing null. Shorter node names, such as XYZ, were stored with null characters filling the rest of the node name array.

The optional null character in v7 and earlier, added some complexity to all code that processes node names. Reading used strncpy() to obtain the 12 characters from the node name field, and then appended a null terminator if needed. Thus the v7 code needs to be adjusted a bit for v8 which always has a null terminator.

A spot check of various portions of the v8 source code reveals that there are some places where the adjustments have not yet been made. Or that the adjustments were done slightly incorrectly. This typically results in an "off by one" error in the string length (e.g., dropping the 63rd visible character of a long node name).

from mdsplus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.