Contractor is GIGO

Open
#7 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Domain
desktop

Research direction

Start by reproducing the invalid URI cases described for single-uri and file contracts, then inspect how Contractor passes parameters to GLib.AppInfo.launch_uris. Done means invalid URIs are detected with an error and the affected contract parameters are passed correctly.

Written by the indexing model from the issue text.

Description

Passing invalid URIs, e.g. file paths that are not URI-encoded and/or not prepended with file://, prints no errors but produces invalid results:

  • In single-uri (%u) contracts every second parameter isn't passed to client.
  • In file contracts (%f and %F) the parameters are not passed to clients at all.

This is the behavior of http://www.valadoc.org/#!api=gio-2.0/GLib.AppInfo.launch_uris and Contractor does not perform validity checks before passing parameters to it.

Launchpad Details: #LP1165481 Sergey "Shnatsel" Davidoff - 2013-04-06 18:00:34 +0000

Dominant language
Vala
Stars
34
Forks
11
Avg merge
7h 17m
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from elementary/contractor

All issues in elementary/contractor

Similar issues

More Desktop Dev issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.