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

qdbusxml2cpp breaks with multiple interfaces and -c

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3: Somewhat important
    • 6.6.0 Beta1
    • 4.8.5, 5.2.0, 6.5.0
    • D-Bus
    • None
    • 5
    • 1ee7aa741 (dev)
    • Foundation Sprint 83

    Description

      Create a header file like

      #ifndef FOO_H
      #define FOO_H
      
      #include <QObject>
      
      struct Foo : public QObject
      {
        Q_OBJECT
        Q_CLASSINFO("D-Bus Interface", "org.cmake.Test.Foo")
      public:
        Foo();
      
      signals:
        void mySignal(int in);
      
      private:
        static int foo();
      };
      
      struct Bar : public QObject
      {
        Q_OBJECT
        Q_CLASSINFO("D-Bus Interface", "org.cmake.Test.Bar")
      public:
        Bar();
      
      signals:
        void barSignal(int in);
      
      };
      
      #endif
      

      Run qdbuscpp2xml on it to create an xml file.

      Run qdbusxml2cpp on the xml file, passing the -c option. C++ files generated have two different classes defined with the same name (as specified with -c).

      There should be sanity checking when using qdbusxml2cpp -c that there is only one interface.

      There should be a recommendation that only one interface should be defined per file for input to qdbuscpp2xml.

      Attachments

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

        Activity

          People

            ievgenii.meshcheriakov Ievgenii Meshcheriakov
            stephen.kelly Stephen Kelly (Unused account) (Inactive)
            Vladimir Minenko Vladimir Minenko
            Alex Blasche Alex Blasche
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes