Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-65557

Allow marshalling QJson* to QDataStream

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Unresolved
    • P4: Low
    • None
    • 5.10.0
    • Remote Objects
    • None
      • Happens on all systems I tested. That includes:
        • Linux gcc_64
        • macOs clang_64
        • iOS
        • Android (armv7 and x86)
        • Windows msvc2017
      • Qt 5.10.0
    • macOS

    Description

      It is not possible to use QJsonObject (or QJsonArray, QJsonValue) in a replicated object. It compiles fine, but fails on runtime with the errors:

      QVariant::save: unable to save type 'QJsonObject' (type id: 46).
      QVariant::load: unable to load type 46.
      

      The reason is obviously, that there are no streaming operators registered for QJsonObject etc. When trying to register the operators myself, nothing changes, because registering operators for build in types is simply not possible (See https://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/kernel/qmetatype.cpp#n818).

      Please either add these operators, or make it possible (at least for QtRemoteObjects internally) to register builtin types

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            laknoll Lars Knoll
            SkyCoder Felix Barz
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes