Ticket #4277 (closed defect (bug): fixed)

Opened 5 years ago

Last modified 5 years ago

bug in addArg() in wp-ajax.js causes nothing to happen

Reported by: joetan Owned by: rob1n
Priority: normal Milestone: 2.2.1
Component: Administration Version: 2.2
Severity: normal Keywords:
Cc: mdawaffe

Description

There is a bug in the addArg() in wp-includes/wp-ajax.js

on line 30, the variable a is basically incorrectly typed: var a = [];

it should be instead: var a = $H();

the function definition should be:

addArg: function(key, value) {
var a = $H();
a[encodeURIComponent(key)] = encodeURIComponent(value);
this.options.parameters = $H(this.options.parameters).merge(a);
}

Attachments

4277.diff Download (582 bytes) - added by rob1n 5 years ago.

Change History

No idea what the problem is you're encountering, however I've attached the diff of your changes for the sake of ease for the devs.

comment:2   ryan5 years ago

  • Owner changed from anonymous to mdawaffe

thanks technosailor.

To help clarify, the function should basically add a new key into the this.options.parameters hash variable, but it never gets updated with the new key because "a" was created as []

I'm encountering this bug with a plugin I'm working on, which does some ajax stuff. It doesn't appear that this function is actually used anywhere else within the WordPress codebase.

  • Milestone set to 2.2.1

I think that should be a = $H() (note parenthesis, not square brackets).

rob1n5 years ago

  • Cc mdawaffe added
  • Owner changed from mdawaffe to rob1n
  • Status changed from new to assigned

Patch updated.

Michael: look good?

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [5498]) Fix wp-ajax.js addArg's hashes. Props technosailor. fixes #4277

Note: See TracTickets for help on using tickets.