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

Crash in QDBusConnectionPrivate::prepareReply() argument matching

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 4.7.0
    • 4.7.0
    • D-Bus
    • None
    • 4b7346a4bd30705ab5910d448ec56daa6568aa90

    Description

      Look at qdbusintegrator.cpp:719, in function QDBusConnectionPrivate::prepareReply().

      The loop that checks if the arguments match does not handle messages with less arguments than in the "metaTypes" list. It simply accesses "msg.arguments().at.userType()" without making sure the argument list actually has an entry i.

      This causes crash https://bugs.kde.org/show_bug.cgi?id=226721 (and duplicates).

      Let me add that I am unsure why the number of arguments passed is too few in the first place. If that is an application error, Qt could emit a qWarning instead of a crash (maybe also for the case when argument types do not match).

      Attachments

        1. konqueror-20100902-045436.kcrash
          7 kB
          Christoph Feck
        2. qdbusintegrator.diff
          0.6 kB
          Christoph Feck

        Activity

          People

            jasmcdon Jason McDonald (Closed Nokia Identity. Please assign to "macadder" instead) (Inactive)
            cfeck Christoph Feck
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: